powered by simpleCommunicator - 2.0.28     © 2024 Programmizd 02
Map
Форумы / C++ [игнор отключен] [закрыт для гостей] / Подключение к базе данных MS SQL
12 сообщений из 12, страница 1 из 1
Подключение к базе данных MS SQL
    #40095123
Добрый день!
Пробую собрать консольное приложение, используя Code::Blocks и MinGW
Код ниже
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
#include <sql.h>
#include <sqlext.h>
#include <iostream>
#include <string>
 
using namespace std;
 
void extract_error(
    string fn,
    SQLHANDLE handle,
    SQLSMALLINT type)
{
    SQLINTEGER   i = 0;
    SQLINTEGER   native;
    SQLCHAR      state[ 7 ];
    SQLCHAR      text[256];
    SQLSMALLINT  len;
    SQLRETURN    ret;
 
    cout << "\nThe driver reported the following diagnostics whilst running " << fn << "\n\n";
 
    do
    {
        ret = SQLGetDiagRec(type, handle, ++i, state, &native, text,
                            sizeof(text), &len );
        if (SQL_SUCCEEDED(ret))
            printf("%s:%ld:%ld:%s\n", state, i, native, text);
    }
    while( ret == SQL_SUCCESS );
}
 
 
 
int main()
{
    cout << "Program had started.." << endl;
 
    SQLHENV env;
    SQLHDBC dbc;
    SQLRETURN ret;
    SQLCHAR outstr[1024];
    SQLSMALLINT outstrlen;
 
    SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &env);
    SQLSetEnvAttr(env, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);
    SQLAllocHandle(SQL_HANDLE_DBC, env, &dbc);
 
    SQLRETURN SR;
 
    cout << "Attempting Connection " << endl;
    SQLCHAR sqlConnectionString [] = "DRIVER={ODBC Driver 17 for SQL Server};SERVER=localhost, 1433;UID=SA;PWD=yourPassword;";
    ret = SQLDriverConnect(dbc, NULL, sqlConnectionString, SQL_NTS,
                         outstr, sizeof(outstr), &outstrlen,
                         SQL_DRIVER_NOPROMPT);
 
    cout << "Connecting ... " << endl;
    extract_error("SQLDriverConnect", dbc, SQL_HANDLE_DBC);
 
    if (SR!= SQL_SUCCESS && SR != SQL_SUCCESS_WITH_INFO)
    {
        cout << "fail to connect" << endl;
 
    }
    else
    {
        cout << "connected" << endl;
    }
 
 
    return 0;
}


Код нашел на одном из форумов, товарищ который его выложил, собирал под Linux
Пробовал собирать также в VS2019, также сыпет море ошибок. Есть подозрение, что у меня не подключена библиотека odbc. Нашел, что файлы библиотеки находятся в следующем каталоге
c:\Program Files\CodeBlocks\MinGW\x86_64-w64-mingw32\
Но правильно ее подключить не получается.
Заранее благодарен за помощь.
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095132
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей МельниченкоЗаранее благодарен за помощь.

Чтобы получить помощь надо показать собственные неудачные попытки.

Например, пробовал ли ты в соотвествии с документацией добавить "odbc32" в
список "Дополнительные библиотеки" линкера в свойствах "Build Target"?..
Posted via ActualForum NNTP Server 1.5

Модератор: Редактировано
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095139
Возможно я делаю это неправильно, вот ниже скриншот моей настройки. Также пробовал прописывать в глобальную переменную путь к папкам:
c:\Program Files\CodeBlocks\MinGW\x86_64-w64-mingw32\lib\
c:\Program Files\CodeBlocks\MinGW\x86_64-w64-mingw32\include\
c:\Program Files\CodeBlocks\MinGW\x86_64-w64-mingw32\bin\
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095142
Вот подключена библиотека wxWidgets
Проект с использованием wxWidgets собирается. Подозреваю, что я неправильно пытаюсь подключить библиотеку odbc
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095143
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во-первых, библиотеки указываются без путей (но это в данном случае пофиг,
поскольку до линковки не доходит).
Во-вторых, начинать надо с чтения сообщений об ошибках, которые не имеют ничего
общего с недостающими библиотеками. А эти тексты говорят о том, что ты не
подключил заголовочные файлы (хотя в первом сообщении написано иное).

Поэтому начни с вдумчивого чтения ПЕРВОГО сообщения об ошибке в
окне сообщений об ошибках.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095149
Вот первое сообщение об ошибке.
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095152
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подсказываю: они легко копируются по правой кнопке мыши в текстовом виде.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095200
petrav
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Code::Blocks, конечно, выглядит как во времена Windows 95. И так подумаешь: вроде бы это и не важно.
А вот посмотришь на это — блин важно! Ну ужас же.
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095212
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей Мельниченко
..... Пока

Ну это вряд ли...

petrav
Code::Blocks, конечно, выглядит как во времена Windows 95. И так подумаешь: вроде бы это и не важно.
А вот посмотришь на это — блин важно! Ну ужас же.

Важные проблемы там с функциональностью и ломающими изменениями, а не внешний вид. Похоже на полузаброшенный проект.


А по теме - топик пока для себя открыл наличие <cstdint> в современных компиляторах. Уже хорошо.
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095219
Siemargl,

Ошибаешься, <cstdint> не работает.
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095224
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей Мельниченко<cstdint> не работает.

Довольно много опечаток в слове "моск"...

Ненуачо, им можно фигню пороть, а я рыжий что ли?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Подключение к базе данных MS SQL
    #40095228
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей Мельниченко
Siemargl,

Ошибаешься, <cstdint> не работает.

Да, достаточно windows.h, а в stdint нет всяких хендлов.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Подключение к базе данных MS SQL
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]