尝试运行C ++ MySQL脚本时权限被拒绝

时间:2017-01-03 14:40:42

标签: c++ mysql codeblocks

所以我试图获得简单的代码来访问使用Xampp托管并使用PhpMyAdmin进行托管的本地MySQL服务器,我只想建立与服务器的连接,但我无法找到我的问题在于!

我知道使用MySQL和Codeblocks有很多链接器错误,我只是简单地将MySQLServer lib添加到链接器以及所有Booster库,并包含MySQLServer Include文件以及Boost Include Files,

当我尝试运行下面的脚本(复制并粘贴)时,我收到此错误:

ld.exe||cannot find C:\Program Files\MySQL\MySQL Server 5.7\include: Permission denied|

我做错了什么?我无法将代码块作为管理员运行,因为我必须使用管理员帐户登录,然后使用我的驱动器,并且每个链接都将消失。

我已经尝试了几个小时,现在有几个MySQLlibs,我现在非常绝望。当我使用Perl时,MySQL完全没问题。

#include "C:\Program Files\MySQL\MySQL Server 5.7\include\mysql.h"
#include <iostream>
#include <stdio.h>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    MYSQL* conn;

    mysql_server_init(0, NULL, NULL);

    conn = mysql_init(NULL);

    if (conn == NULL) {
        cout << "Keine Datenbankinitialisierung moeglich!\n";
        return -1;
    }
    cout << "Datenbank initialisiert!\n";

    if (mysql_real_connect(conn, "localhost", "root", "root", "test", 3306, NULL, 0) == NULL) {
        cout << "Datenbank test konnte nicht geoeffnet werden!\n";
        cout << "Error: " << mysql_error(conn) << endl;
        return -1;
    }

    cout << "datenbank test wurde geoeffnet!\n";
    cout << "\nein paar ausgaben aus der tabelle adressen der test-datenbank:\n";

    MYSQL_FIELD* field;
    MYSQL_RES* result;
    MYSQL_ROW row;
    unsigned long* fieldLengths;

    mysql_query(conn, "SELECT * FROM namen");
    /* "namen" ist der Name der Tabelle auf die zugegriffen werden soll ! */

    result = mysql_store_result(conn);

    unsigned int fieldNumbers = mysql_num_fields(result);

    cout << "\nAnzahl der Spalten : " << fieldNumbers << endl;

    while ((row = mysql_fetch_row(result))) {
        fieldLengths = mysql_fetch_lengths(result);
        for (int i = 0; i < fieldNumbers; i++) {
            if (row[i] == 0) {
                printf(" (null) ");
            }
            else {
                //printf("%s ",  row[i] );
                cout << row[i] << "  ";
            }

        } // end for

        cout << endl;

    } // end while

    mysql_free_result(result);
    mysql_close(conn);
    cout << "\nDatenbank test wurde wieder geschlossen!\n";

    mysql_server_end();
    return 0;
}

UPDATE;是因为我已经将MYSQLServer \ include添加到链接器列表中,即使这些文件属于&#34;搜索目录&#34;。我这样做是因为它修复了一些错误,并且只提出了#34;权限被拒绝&#34;之一。

当我从链接器中删除此行时,出现此类错误:C:\Users\dzin\Desktop\c++tests\test\main.cpp|13|undefined reference to mysql_server_init@12'|

0 个答案:

没有答案