Code/Resource
Windows Develop
Linux-Unix program
Internet-Socket-Network
Web Server
Browser Client
Ftp Server
Ftp Client
Browser Plugins
Proxy Server
Email Server
Email Client
WEB Mail
Firewall-Security
Telnet Server
Telnet Client
ICQ-IM-Chat
Search Engine
Sniffer Package capture
Remote Control
xml-soap-webservice
P2P
WEB(ASP,PHP,...)
TCP/IP Stack
SNMP
Grid Computing
SilverLight
DNS
Cluster Service
Network Security
Communication-Mobile
Game Program
Editor
Multimedia program
Graph program
Compiler program
Compress-Decompress algrithms
Crypt_Decrypt algrithms
Mathimatics-Numerical algorithms
MultiLanguage
Disk/Storage
Java Develop
assembly language
Applications
Other systems
Database system
Embeded-SCM Develop
FlashMX/Flex
source in ebook
Delphi VCL
OS Develop
MiddleWare
MPI
MacOS develop
LabView
ELanguage
Software/Tools
E-Books
Artical/Document
NDBT_DataSet.hpp
Package: mysql-4.1.16-win-src.zip [view]
Upload User: romrleung
Upload Date: 2022-05-23
Package Size: 18897k
Code Size: 3k
Category:
MySQL
Development Platform:
Visual C++
- /* Copyright (C) 2003 MySQL AB
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
- #ifndef NDBT_DATA_SET_HPP
- #define NDBT_DATA_SET_HPP
- #include "NDBT_Table.hpp"
- #include <NdbApi.hpp>
- class NDBT_DataSet;
- class NDBT_DataSetFactory {
- public:
- NDBT_DataSet * createEmpty(const NDBT_Table & table,
- const char * columns[]);
- NDBT_DataSet * createRandom(const NDBT_DataSet & table,
- const char * columns[],
- int rows);
- NDBT_DataSet * createXXX(int noOfDS, const NDBT_DataSet ** datasets);
- };
- class NDBT_DataSet {
- friend class NDBT_DataSetFactory;
- public:
- /**
- * Rows in the data set
- */
- void setRows(int rows);
- void addRows(int rows);
- int getNoOfRows() const;
- /**
- * Columns for a row in the data set
- */
- int getNoOfColumns() const;
- int getNoOfPKs() const;
- const NDBT_Attribute * getColumn(int index);
- const NDBT_Attribute * getColumn(const char * name);
- /**
- * Data status in dataset
- */
- bool hasPK(int row);
- bool hasData(int row);
- /**
- * Do all rows in the dataset have a PK
- */
- bool hasPK();
- /**
- * Do all rows in the dataset has data
- */
- bool hasData();
- /**
- * Getters for data
- */
- Uint32 getUInt(int row, int index) const;
- Uint32 getUInt(int row, const char * attribute) const;
- Int32 getInt(int row, int index) const;
- Int32 getInt(int row, const char * attribute) const;
- const char * getString(int row, int index) const;
- const char * getString(int row, const char * attribute) const;
- bool getIsNull(int row, int index) const;
- bool getIsNull(int row, const char * attribute) const;
- /**
- * Setters for data
- */
- void set(int row, int index, Int32 value);
- void set(int row, const char * attr, Int32 value);
- void set(int row, int index, Uint32 value);
- void set(int row, const char * attr, Uint32 value);
- void set(int row, int index, const char * value);
- void set(int row, const char * attr, const char * value);
- /**
- * Comparators
- */
- /**
- * Is this dataset identical to other dataset
- *
- * If either of the datasets have "undefined" rows the answer is false
- */
- bool equal(const NDBT_DataSet & other) const;
- /**
- * Do these dataset have identical PK's
- *
- * I.e noOfRows equal
- *
- * and for each row there is a corresponding row in the other ds
- * with the same pk
- */
- bool equalPK(const NDBT_DataSet & other) const;
- private:
- NDBT_Attribute * columns;
- Uint32 noOfRows;
- Uint32 noOfPKs;
- Uint32 * pks;
- Uint32 * columnSizes;
- char * pkData;
- char * data;
- char * pk(int row, int pkIndex);
- char * column(int row, int columnIndex);
- Uint32 * hasPK;
- Uint32 * hasData;
- };
- #endif