DSL.using(c) .fetch(sql) .map(r -> new Schema( r.getValue("SCHEMA_NAME", String.class), r.getValue("IS_DEFAULT", boolean.class) ))
Schema schema = new Schema(1, "com.core.greendao.db"); Entity user = schema.addEntity("User"); user.addIdProperty(); Entity topic = schema.addEntity("Topic"); topic.addIdProperty(); Property userId = topic.addLongProperty("user_id").notNull().getProperty() topic.addToOne(user, userId);
public static void main(String[] args) throws Exception { int currentVersion = 4; Schema schema = new Schema(currentVersion, "com.example.app.model.generated"); new DaoGenerator().generateAll(schema, "app/src/main/java/"); }
import de.greenrobot.daogenerator.DaoGenerator; import de.greenrobot.daogenerator.Entity; import de.greenrobot.daogenerator.Schema; public class MainGenerator { public static void main(String[] args) throws Exception { //place where db folder will be created inside the project folder Schema schema = new Schema(1,"com.codekrypt.greendao.db"); //Entity i.e. Class to be stored in the database // ie table LOG Entity word_entity= schema.addEntity("LOG"); word_entity.addIdProperty(); //It is the primary key for uniquely identifying a row word_entity.addStringProperty("text").notNull(); //Not null is SQL constrain // ./app/src/main/java/ ---- com/codekrypt/greendao/db is the full path new DaoGenerator().generateAll(schema, "./app/src/main/java"); } }
public class MyDaoGenerator { public static void main(String args[]) throws Exception { Schema schema = new Schema(3, "Dao"); Entity company = schema.addEntity("Company"); company.addIdProperty().autoincrement().notNull(); company.addStringProperty("comp_name"); company.addStringProperty("comp_location"); company.addStringProperty("comp_address"); Entity employee = schema.addEntity("Employee"); employee.addIdProperty().autoincrement(); employee.addStringProperty("name"); employee.addStringProperty("mobile"); employee.addStringProperty("address"); Property companyId = employee.addLongProperty("company_id").getProperty(); employee.addToOne(company, companyId); new DaoGenerator().generateAll(schema, args[0]); } }
create: function(options) { self.index++; return new Schema(options.data, options.parent, self.index);
var SomeOther = { a : { type:String, default:'test' }, b : { type:Boolean, default:false } ... }; var SomeOtherSchema = new Schema(SomeOther); // Optional, if needed elsewhere var GroupSettings = { x : { type:Number, default:20 }, y : { type:Boolean, default:false }, ... else : SomeOther }; var GroupSettingSchema = new Schema(GroupSettings); // Optional, if needed elsewhere var GroupSchema = new Schema({ name : { type:String , required:true, unique:true}, description : { type:String, required:true }, ... settings : GroupSettings });
public Schema outputSchema(Schema input) { try{ Schema.FieldSchema counter = new Schema.FieldSchema("counter", DataType.INTEGER); Schema tupleSchema = new Schema(input.getField(0).schema.getField(0).schema.getFields()); tupleSchema.add(counter); Schema.FieldSchema tupleFs; tupleFs = new Schema.FieldSchema("with_counter", tupleSchema, DataType.TUPLE); Schema bagSchema = new Schema(tupleFs); return new Schema(new Schema.FieldSchema("row_counter", bagSchema, DataType.BAG)); }catch (Exception e){ return null; } } }
return new Schema(new Schema.FieldSchema(null, DataType.CHARARRAY));
public Schema outputSchema(Schema input) { Schema mySchema = new Schema(); if (input.getFields().size() == 3) { mySchema.add(new Schema.FieldSchema("data1", DataType.DOUBLE)); mySchema.add(new Schema.FieldSchema("data2", DataType.DOUBLE)); mySchema.add(new Schema.FieldSchema("data3", DataType.DOUBLE)); } else { mySchema.add(new Schema.FieldSchema("data", DataType.CHARARRAY)); } return mySchema; }
final Schema schema = new Schema(); schema.setName(getSchemaName()); fKey.getForeignKeyTable().setSchema(schema);