All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.tinygroup.tinysqldsl.Insert Maven / Gradle / Ivy

The newest version!
/**
 * Copyright (c) 1997-2013, www.tinygroup.org ([email protected]).
 * 

* Licensed under the GPL, Version 3.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.gnu.org/licenses/gpl.html *

* 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.tinygroup.tinysqldsl; import org.tinygroup.tinysqldsl.base.*; import java.util.Arrays; /** * Insert语句 Created by luoguo on 2015/3/11. */ public class Insert extends StatementSqlBuilder implements Statement { private InsertContext context; /** * SQL语句的标识,只是用于方便的识别是哪个SQL,没有其它意义,可以不设置 */ private String id; private Insert() { context = new InsertContext(); } public static Insert insertInto(Table table) { Insert insert = new Insert(); insert.getContext().setTable(table); insert.getContext().setSchema(table.getSchemaName()); insert.getContext().setTableName(table.getName()); return insert; } public String getId() { return id; } public InsertContext getContext() { return context; } public Insert values(Value... values) { context.addValues(values); return this; } public Insert columns(Column... columns) { context.setColumns(Arrays.asList(columns)); context.setUseValues(false); return this; } public Insert selectBody(Select select) { context.setItemsList(null); context.setSelectBody(select.getPlainSelect()); return this; } @Override public String toString() { return sql(); } @Override protected void parserStatementBody() { build(context.createInsert()); } public void id(String id) { this.id = id; } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy