exampledatabase.hpp

来自「LiteSQL is a C++ library that integrates」· HPP 代码 · 共 458 行 · 第 1/2 页

HPP
458
字号
    virtual void addIDUpdates(Updates& updates);public:    static void getFieldTypes(std::vector<litesql::FieldType>& ftypes);protected:    virtual void delRecord();    virtual void delRelations();public:    virtual void update();    virtual void del();    virtual bool typeIsCorrect();    std::auto_ptr<Person> upcast();    std::auto_ptr<Person> upcastCopy();};std::ostream & operator<<(std::ostream& os, Person o);class Role : public litesql::Persistent {public:    class PersonHandle : public litesql::RelationHandle<Role> {    public:        PersonHandle(const Role& owner);        void link(const Person& o0);        void unlink(const Person& o0);        void del(const litesql::Expr& expr=litesql::Expr());        litesql::DataSource<Person> get(const litesql::Expr& expr=litesql::Expr(), const litesql::Expr& srcExpr=litesql::Expr());        litesql::DataSource<RoleRelation::Row> getRows(const litesql::Expr& expr=litesql::Expr());    };    static const std::string type__;    static const std::string table__;    static const std::string sequence__;    static const litesql::FieldType Id;    litesql::Field<int> id;    static const litesql::FieldType Type;    litesql::Field<std::string> type;protected:    void defaults();public:    Role(const litesql::Database& db);    Role(const litesql::Database& db, const litesql::Record& rec);    Role(const Role& obj);    const Role& operator=(const Role& obj);    Role::PersonHandle person();protected:    std::string insert(litesql::Record& tables, litesql::Records& fieldRecs, litesql::Records& valueRecs);    void create();    virtual void addUpdates(Updates& updates);    virtual void addIDUpdates(Updates& updates);public:    static void getFieldTypes(std::vector<litesql::FieldType>& ftypes);protected:    virtual void delRecord();    virtual void delRelations();public:    virtual void update();    virtual void del();    virtual bool typeIsCorrect();    std::auto_ptr<Role> upcast();    std::auto_ptr<Role> upcastCopy();};std::ostream & operator<<(std::ostream& os, Role o);class Student : public Role {public:    class SchoolHandle : public litesql::RelationHandle<Student> {    public:        SchoolHandle(const Student& owner);        void link(const School& o0);        void unlink(const School& o0);        void del(const litesql::Expr& expr=litesql::Expr());        litesql::DataSource<School> get(const litesql::Expr& expr=litesql::Expr(), const litesql::Expr& srcExpr=litesql::Expr());        litesql::DataSource<SchoolStudentRelation::Row> getRows(const litesql::Expr& expr=litesql::Expr());    };    static const std::string type__;    static const std::string table__;    Student(const litesql::Database& db);    Student(const litesql::Database& db, const litesql::Record& rec);    Student(const Student& obj);    const Student& operator=(const Student& obj);    Student::SchoolHandle school();protected:    std::string insert(litesql::Record& tables, litesql::Records& fieldRecs, litesql::Records& valueRecs);    void create();    virtual void addUpdates(Updates& updates);    virtual void addIDUpdates(Updates& updates);public:    static void getFieldTypes(std::vector<litesql::FieldType>& ftypes);protected:    virtual void delRecord();    virtual void delRelations();public:    virtual void update();    virtual void del();    virtual bool typeIsCorrect();    std::auto_ptr<Student> upcast();    std::auto_ptr<Student> upcastCopy();};std::ostream & operator<<(std::ostream& os, Student o);class Employee : public Role {public:    class OfficeHandle : public litesql::RelationHandle<Employee> {    public:        OfficeHandle(const Employee& owner);        void link(const Office& o0);        void unlink(const Office& o0);        void del(const litesql::Expr& expr=litesql::Expr());        litesql::DataSource<Office> get(const litesql::Expr& expr=litesql::Expr(), const litesql::Expr& srcExpr=litesql::Expr());        litesql::DataSource<EmployeeOfficeRelation::Row> getRows(const litesql::Expr& expr=litesql::Expr());    };    static const std::string type__;    static const std::string table__;    Employee(const litesql::Database& db);    Employee(const litesql::Database& db, const litesql::Record& rec);    Employee(const Employee& obj);    const Employee& operator=(const Employee& obj);    Employee::OfficeHandle office();protected:    std::string insert(litesql::Record& tables, litesql::Records& fieldRecs, litesql::Records& valueRecs);    void create();    virtual void addUpdates(Updates& updates);    virtual void addIDUpdates(Updates& updates);public:    static void getFieldTypes(std::vector<litesql::FieldType>& ftypes);protected:    virtual void delRecord();    virtual void delRelations();public:    virtual void update();    virtual void del();    virtual bool typeIsCorrect();    std::auto_ptr<Employee> upcast();    std::auto_ptr<Employee> upcastCopy();};std::ostream & operator<<(std::ostream& os, Employee o);class School : public litesql::Persistent {public:    class StudentsHandle : public litesql::RelationHandle<School> {    public:        StudentsHandle(const School& owner);        void link(const Student& o0);        void unlink(const Student& o0);        void del(const litesql::Expr& expr=litesql::Expr());        litesql::DataSource<Student> get(const litesql::Expr& expr=litesql::Expr(), const litesql::Expr& srcExpr=litesql::Expr());        litesql::DataSource<SchoolStudentRelation::Row> getRows(const litesql::Expr& expr=litesql::Expr());    };    static const std::string type__;    static const std::string table__;    static const std::string sequence__;    static const litesql::FieldType Id;    litesql::Field<int> id;    static const litesql::FieldType Type;    litesql::Field<std::string> type;    static const litesql::FieldType Name;    litesql::Field<std::string> name;protected:    void defaults();public:    School(const litesql::Database& db);    School(const litesql::Database& db, const litesql::Record& rec);    School(const School& obj);    const School& operator=(const School& obj);    School::StudentsHandle students();protected:    std::string insert(litesql::Record& tables, litesql::Records& fieldRecs, litesql::Records& valueRecs);    void create();    virtual void addUpdates(Updates& updates);    virtual void addIDUpdates(Updates& updates);public:    static void getFieldTypes(std::vector<litesql::FieldType>& ftypes);protected:    virtual void delRecord();    virtual void delRelations();public:    virtual void update();    virtual void del();    virtual bool typeIsCorrect();    std::auto_ptr<School> upcast();    std::auto_ptr<School> upcastCopy();};std::ostream & operator<<(std::ostream& os, School o);class Office : public litesql::Persistent {public:    class EmployeesHandle : public litesql::RelationHandle<Office> {    public:        EmployeesHandle(const Office& owner);        void link(const Employee& o0);        void unlink(const Employee& o0);        void del(const litesql::Expr& expr=litesql::Expr());        litesql::DataSource<Employee> get(const litesql::Expr& expr=litesql::Expr(), const litesql::Expr& srcExpr=litesql::Expr());        litesql::DataSource<EmployeeOfficeRelation::Row> getRows(const litesql::Expr& expr=litesql::Expr());    };    static const std::string type__;    static const std::string table__;    static const std::string sequence__;    static const litesql::FieldType Id;    litesql::Field<int> id;    static const litesql::FieldType Type;    litesql::Field<std::string> type;protected:    void defaults();public:    Office(const litesql::Database& db);    Office(const litesql::Database& db, const litesql::Record& rec);    Office(const Office& obj);    const Office& operator=(const Office& obj);    Office::EmployeesHandle employees();protected:    std::string insert(litesql::Record& tables, litesql::Records& fieldRecs, litesql::Records& valueRecs);    void create();    virtual void addUpdates(Updates& updates);    virtual void addIDUpdates(Updates& updates);public:    static void getFieldTypes(std::vector<litesql::FieldType>& ftypes);protected:    virtual void delRecord();    virtual void delRelations();public:    virtual void update();    virtual void del();    virtual bool typeIsCorrect();    std::auto_ptr<Office> upcast();    std::auto_ptr<Office> upcastCopy();};std::ostream & operator<<(std::ostream& os, Office o);class ExampleDatabase : public litesql::Database {public:    ExampleDatabase(std::string backendType, std::string connInfo);protected:    virtual std::vector<litesql::Database::SchemaItem> getSchema() const;    static void initialize();};}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?