12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- #include "TableHelper.h"
- #include <QStringList>
- TableHelper::TableHelper()
- {
- }
- QString TableHelper::createTable(const QString &tablename, const QList<QPair<QString, QString> > &fieldAndTypes)
- {
- QStringList fields;
- foreach(auto &item, fieldAndTypes)
- {
- fields << item.first +" " + item.second;
- }
- return QString("create table %1 ( \n %2 \n ); \n").arg(tablename).arg(fields.join(", \n"));
- }
- QString TableHelper::createComment(const QString &tablename, const QList<QPair<QString, QString> > &fieldAndComments)
- {
- QStringList comments;
- foreach(auto &item, fieldAndComments)
- {
- comments << QString("COMMENT ON COLUMN %1.%2 IS '%3'; ").arg(tablename).arg(item.first).arg(item.second);
- }
- return comments.join("\n");
- }
- QString TableHelper::createPrimaryAlter(const QString &tablename)
- {
- return QString("alter table %1 add constraint PK_%1_Id primary key(ID);").arg(tablename);
- }
- QString TableHelper::createSeq(const QString &tablename)
- {
- return QString("drop sequence SEQ_%1; \n\
- CREATE SEQUENCE SEQ_%1 \n\
- START WITH 1 \n\
- MAXVALUE 99999999999999 \n\
- MINVALUE 1 \n\
- CYCLE \n\
- CACHE 20 \n\
- ORDER;").arg(tablename);
- }
- QString TableHelper::createTrigger(const QString &tablename)
- {
- return QString("create or replace trigger %1_TRIGGER \n\
- before insert on %1 \n\
- for each row \n\
- begin \n\
- select SEQ_%1.nextval into :new.ID from dual;\n\
- end;").arg(tablename);
- }
|