Subversion Repositories OpenInventory

Rev

Rev 38 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

#ifndef SQLTABLE_H
#define SQLTABLE_H

#include <QObject>
#include <QList>
#include "tablefield.h"


class SqlTable : public QObject
{
Q_OBJECT
public:
        explicit SqlTable(QString tname, QObject *parent = 0);


void setName(QString tname); // ôóíêöèÿ ïðèñâàèâàåò èìÿ òàáëèöå, èìå ïåðåäàåòñÿ â ïàðàìåòðå ôóíêöèè tname
QString name();              // ôóíêöèÿ áåç ïàðàìåòðîâ âîçâðàùàåò èìÿ òàáëèöû
QList<TableField*> fields(); // âîçâðàùàåò ñïèñîê óêàçàòåëåé íà ïîëÿ òàáëèöû
bool setPrimaryKey(QString fieldName); // ôóíêöèÿ óñòàíàâëèâàåò ïåðâè÷íûì êëþ÷îì ïîëå, èìåíÿ êîòîðîãî ñîâïàäàåò ñ ïåðåäàâàåìûì ïàðàìåòðîì fieldName
QString lastError(); // ôóíêöèÿ âîçâðàùàåèò ïîÿñíèòåëüíûé òåêñò ïîñëåäíåé îøèáêè, êîòîðàÿ âîçíèêëà ïðè âûçîâå ìåòîäîâ êëàññà
QString primaryKey(); // ôóíêöèÿ âîçâðàùàåò èìÿ ïîëÿ, êîòîðîå ÿâëÿåòñÿ ïåðâè÷íûì êëþ÷îì
QString sqlString(); //  ôóíêöèÿ ãåíåðèðóåò ñòðîêó Sql-çàïðîñà, êîòîðàÿ ñîçäàåò â áàçå äàííûõ ñîîòâåòñòâóþùóþ òàáëèöó
void append(TableField* newfield); // äîáàâëÿåò â êîíåö ñïèñêà (óêàçàòåëåé) ïîëåé òàáëèöû íîàîå ïîëå, ïåðåäàâàåìîå ÷åðåç ïàðàìåòð  newfield (óêàçàòåëü)


private:
QString tableName;          // èìÿ òàáëèöû
QString SqlString;          // ñòðîêà Sql-çàïðîñà äëÿ ñîçäàíèÿ òàáëèöû â áàçå äàííûõ
QString tableCharacterSet;       // ïåðåìåííàÿ ñîäåðæèò êîäèðîâêó, â êîòîðîé õðàíÿòüñÿ òåêñòîâûå äàííûå
QString tablePrimaryKey;    // èìÿ ïîëÿ, ÿâëÿþùåãîñÿ ïåðâè÷íûì êëþ÷îì òàáëèöû
QString tableEngine;        // äâèæåê òàáëèöû
int tablePrimaryKeyIndex;        // ïîðÿäêîâûé íîìåð ïîëÿ (â ñïèñêå ïîëåé fields), êîòîðîå ÿâëÿåòñÿ ïåðâè÷íûì êëþ÷îì òàáëèöû
QList<TableField*> tableFields;  // â ýòîì ñïèñêå íàõîäòñÿ âñå ïîëÿ òàáëèöû
TableField *field_tmp;
QString tableLastError; // ñòðîêà ñîäåðæèò ïîÿñíèòåëüíûé òåêñò ïîñëåäíåé îøèáêè, êîòîðàÿ âîçíèêëà ïðè âûçîâå ìåòîäîâ êëàññà

bool createSqlString();     // ôóíêöèÿ ãåíåðèðóåò ñòðîêó Sql-çàïðîñà, êîòîðàÿ ñîçäàåò â áàçå äàííûõ ñîîòâåòñòâóþùe òàáëèöó

protected:

};

#endif // SQLTABLE_H