Страница 1 из 1
C++ MySQL
Добавлено: 2010-02-09 14:53:06
fox
Добрый день, Господа Специалисты!
Вот такая не задача, начал изучать C++ кой чему научился, самую малость... Хотел бы узнать как прикрутить C++ к MySQL?
Не могли бы Вы, выложить пару примеров как допустим вывести на экран всё содержимое из базы mysql, к примеру из таблицы user, самый простой пример? Потому, что я гуглил, нашёл кучу примеров, но что то не один не работает, и они слишком замудрённые, а мне самый просто для миро понимания, поможете Господа?
Re: C++ MySQL
Добавлено: 2010-02-09 17:13:46
hizel
зачем вас C++ ?
посмотрите исходник netams там кошерный C и достаточно простой
Re: C++ MySQL
Добавлено: 2010-02-09 17:36:31
fox
А вы можете, написать простейший пример?
Я понимаю, что всюду и повсюду всего много, но когда только начинаешь, учить и не получается тебе надо в курить концепцию...
Вот я и прошу простейший пример...
За ранние спасибо!
Re: C++ MySQL
Добавлено: 2010-02-09 17:49:38
hizel
у! с такими запросами я бы вам не рекомендовал Це++ изучать
что касается простейших примеров, то первая же сцылко google:
mysql c api example дало
http://zetcode.com/tutorials/mysqlcapitutorial/
в которых примеры рабочие, сам сейчас лично проверил
Re: C++ MySQL
Добавлено: 2010-02-10 0:00:47
Fastman
Зачем тебе сразу MySQL ??? На Sqlite потренируйся.
У меня где то так выглядит это
))
Коннект к базе
Код: Выделить всё
bool CProjectManager::DBConnect()
{
db = QSqlDatabase::addDatabase("QSQLITE", "WatchDB");
db.setDatabaseName(qApp->applicationDirPath() + QDir::separator() + QString("watcherdb.db"));
bool bOK = db.open();
#ifdef QT_DEBUG
qDebug() << "DB connect:"<< bOK;
#endif
return bOK;
}
Примеры запросов:
Код: Выделить всё
bool CProjectManager::DBSetStatus(qint64 nID, qint32 nStatus)
{
QSqlQuery query(db);
query.prepare("UPDATE DBWATCH SET STATE = :STATE WHERE ID = :ID");
query.bindValue(":STATE", nStatus);
query.bindValue(":ID", nID);
if(!query.exec())
return false;
return true;
}
Код: Выделить всё
bool CProjectManager::DBAddFileTask(sTaskInfo s_Task)
{
QSqlQuery query(db);
query.prepare("INSERT INTO DBWATCH (FILENAME, FULLPATH, SIZE, STATE) "
"VALUES (:FILENAME, :FULLPATH, :SIZE, :STATE)");
query.bindValue(":FILENAME", s_Task.FILENAME);
query.bindValue(":FULLPATH", s_Task.FULLPATCH);
query.bindValue(":SIZE", s_Task.SIZE);
query.bindValue(":STATE", s_Task.STATE);
if(!query.exec())
return false;
return true;
}
к MySQL выглядит почти один в один
))
Re: C++ MySQL
Добавлено: 2010-02-10 0:22:44
hizel
пахнет Qt4
Re: C++ MySQL
Добавлено: 2010-02-10 2:13:56
fox
Доброй ночи Господа!
Спасибо большое всем за участие!!! Я очень счастлив, у меня получилось разобраться! Вот по этой статье:
http://zetcode.com/tutorials/mysqlcapitutorial/
И под BSD, всё чётко работает, и те примеры которые не работали под BSD, чётко работают, дело было не в примерах а в виндовозе, вначале я пробовал С++ привязать к MySQL под виндой, но там не компилится, ругается!
А под BSD всё супер!
Re: C++ MySQL
Добавлено: 2010-02-17 15:02:11
Dambo
Советую в 1 очередь научиться понимать то на что он вам ругается без этого будете в тёмных лесах по чужим исходникам ориентироваться только...
Re: C++ MySQL
Добавлено: 2010-02-17 19:49:45
fox
Re: C++ MySQL
Добавлено: 2010-02-18 2:33:36
Dambo
А вы как в школе, детей учат на правильном делать ошибки так и вы и смотрите что он вам выплёвывает.
П.с. каждый компиляр может своё выдавать на какие нибудь специфики, конечно синтаксис ерор у всех один)
Re: C++ MySQL
Добавлено: 2010-02-18 10:03:19
hizel
не с того конца программировать начинаем и ничего хорошего из этого не получится