
br.com.objectos.db.SchemaBuilder Maven / Gradle / Ivy
The newest version!
/*
* Copyright 2014-2015 Objectos, Fábrica de Software LTDA.
*
* 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 br.com.objectos.db;
import java.util.stream.Stream;
/**
* @author [email protected] (Marcio Endo)
*/
public interface SchemaBuilder extends QueryBuilder {
SchemaBuilder accept(SchemaElement element);
SchemaBuilder addColumn(String name);
SchemaBuilder alterTable(String name);
SchemaBuilder autoIncrement();
SchemaBuilder charset(String charset);
SchemaBuilder charType(int length);
SchemaBuilder createDatabase(String name);
SchemaBuilder createDatabaseIfNotExists(String name);
SchemaBuilder createTable(String name);
SchemaBuilder datetime();
SchemaBuilder defaultCurrentTimestamp();
SchemaBuilder dropColumn(String name);
SchemaBuilder endCreateTable();
SchemaBuilder identifier(String name);
SchemaBuilder intType();
SchemaBuilderOn on(char separator);
SchemaBuilder onUpdateCurrentTimestamp();
SchemaBuilder primaryKey(Iterable extends IndexElement> elements);
SchemaBuilder nullable(boolean nullable);
SchemaBuilder mediumint();
SchemaBuilder smallint();
SchemaBuilder tinyint();
SchemaBuilder unsigned(boolean unsigned);
SchemaBuilder timestamp();
SchemaBuilder varchar(int length);
interface SchemaBuilderOn {
SchemaBuilder join(Stream extends SchemaElement> stream);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy