yagami_md Ответов: 1

Как соединить базу данных SQL с консолью программы C ?


всем привет ..
пример вопроса пожалуйста , у меня есть консольная программа , и я хочу подключиться к databse sql, я хочу знать, что я должен делать

спасибо

Что я уже пробовал:

C++ pgroram для подключения к базе данных (и обработки ошибок)
#include<stdio.h> 
#include<sqlapi.h>		 // main SQLAPI++ header 

int main(int argc, char* argv[]) 
{ 
	// create connection object to connect to database 
	SAConnection con; 
	try
	{ 
		// connect to database 
		// in this example, it is Oracle, 
		// but can also be Sybase, Informix, DB2 
		// SQLServer, InterBase, SQLBase and ODBC 
		con.Connect ("test", // database name 
					"tester", // user name 
					"tester", // password 
					SA_Oracle_Client); //Oracle Client 
		printf("We are connected!\n"); 

		// Disconnect is optional 
		// autodisconnect will occur in destructor if needed 
		con.Disconnect(); 
		printf("We are disconnected!\n"); 
	} 

	catch(SAException & x) 
	{ 
		// SAConnection::Rollback() 
		// can also throw an exception 
		// (if a network error for example), 
		// we will be ready 
		try
		{ 
			// on error rollback changes 
			con.Rollback (); 
		} 
		catch(SAException &) 
		{ 
		} 
		// print error message 
		printf("%s\n", (const char*)x.ErrText()); 
	} 
	return 0; 
}

Afzaal Ahmad Zeeshan

И в чем же проблема?

Ваша операция имеет название для C, но тег и программа на C++. Кроме того, ознакомьтесь с документацией Microsoft, чтобы узнать, как это сделать с помощью C++: https://docs.microsoft.com/en-us/sql/connect/odbc/cpp-code-example-app-connect-access-sql-db?view=sql-server-ver15

1 Ответов

Рейтинг:
1

Garth J Lancaster

Это зависит от того, к какой породе/типу базы данных вы хотите подключиться - например, для Oracle вам нужно установить OCI версии 8 (по крайней мере), а затем, как предлагает ваш код, использовать SA_Oracle_Client в соединении. Затем SqlAPI будет использовать правильный драйвер Oracle. Видеть здесь https://www.sqlapi.com/ApiDoc/servers/[^] для других пород базы данных.

Как спросил Вас Афзаал Ахмад Зеешан, вы на самом деле не указываете, в чем заключается проблема, поэтому ваш вопрос немного широк для более тонкого уровня детализации ответа - вы можете использовать зеленый виджет "улучшить вопрос", чтобы отредактировать вопрос и предоставить дополнительную информацию