Гость
Форумы / C++ [игнор отключен] [закрыт для гостей] / ЛЮДИ-ЧЕЛОВЕКИ! Подскажите реально: создать MS Access databse / 6 сообщений из 6, страница 1 из 1
13.01.2003, 06:06
    #32089339
dashkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЛЮДИ-ЧЕЛОВЕКИ! Подскажите реально: создать MS Access databse
Люди-ЧЕЛОВЕКИ! Так много брожу по форумам и нигде не видел реального примера по созданию программно файла базы Access и таблицы в ней! Данная тема практически на всех форумах муссируется но ответов просто нет! КОроче - тока слюни пускают, а ответить никто еще пока не смог! Как реально можно создать это дело посредством ADO?
...
Рейтинг: 0 / 0
14.01.2003, 06:14
    #32089985
dashkov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЛЮДИ-ЧЕЛОВЕКИ! Подскажите реально: создать MS Access databse
Надо так понимать, что умных мыслей не будет???? Неужели в BCB нельзя создать программно создать базу данных Access??? И неужели нет умных или ответов на такой вопрос?
...
Рейтинг: 0 / 0
04.02.2003, 16:33
    #32101049
_kyky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЛЮДИ-ЧЕЛОВЕКИ! Подскажите реально: создать MS Access databse
БЕРЕМ ERWIN 4.0 РИСУЕМ СТРУКТУРУ И
СОЗДАЕМ ЭТУ СТРУКТУРУ В MDB
...
Рейтинг: 0 / 0
26.02.2003, 08:54
    #32111202
kyky
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЛЮДИ-ЧЕЛОВЕКИ! Подскажите реально: создать MS Access databse
Насчет ADO незнаю, но в DAO /а они довольно похожи/ можно сделать следующим образом:

Код: 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.
try
{
	CDaoTableDef tblDef (m_pDatabase); // передать указатель на объект  "база" 
        CDaoFieldInfo fldInfo;

	tblDef.Open ( "some_table" );

	if (tblDef.CanUpdate ())
	{
		fldInfo.m_strName =  "some_field" ;
		fldInfo.m_nType = dbLong; // тип поля
		fldInfo.m_lSize = dbLong;   // размер
		fldInfo.m_lAttributes = dbFixedField | dbUpdatableField; // атрибуты
		fldInfo.m_strDefaultValue =  "0 ";   // значение по умолчанию
		fldInfo.m_bAllowZeroLength = FALSE;

		tblDef.CreateField (fldInfo);
	}
	tblDef.Close ();
}
catch (CDaoException *pError)
{
	pError->ReportError ();
	pError->Delete ();
}


все это довольно подробно описанно в MSDN
...
Рейтинг: 0 / 0
09.03.2003, 14:03
    #32116791
Shrike
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЛЮДИ-ЧЕЛОВЕКИ! Подскажите реально: создать MS Access databse
Код: 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.
#include <odbcinst.h>
#pragma comment(lib,  "odbccp32" )
#pragma comment(lib,  "user32" )
#include <afxdb.h> // CDatabase

const char* dsn_c =  "DSN=My test Database" ;
const char* driver =  "Microsoft Access Driver (*.mdb)" ;
//####################################################################

bool createDSN(const char* dir, const char* file) // v dannom sly4ae dir zakan4ivaetsya na  "\" 
{
	char params[ 1024 ] = { 0 };
	char* p =  0 ;
	char* des =  "Description=Database for test" ;
	char dd[ 256 ] = { 0 }; strcpy(dd,  "DefaultDir=" ); strcat(dd, dir);
	char df[ 256 ] = { 0 }; strcpy(df,  "DBQ=" ); strcat(df, file);
	char cmd[ 512 ] = { 0 }; sprintf(cmd,  "CREATE_DB=%s%s" , dir, file);

	// ydalyaem bazy, ina4e bydet oshibka pri sozdanii faila bazi
	sprintf(params,  "%s%s" , dir, file);
	remove(params);

	strcpy(params, dsn_c);
	p = &params[ 0 ];
	do{ p++; } while(*p);
	p++;
	strcat(p, des);
	do{ p++; } while(*p);
	p++;
	strcat(p, dd);
	do{ p++; } while(*p);
	p++;
	strcat(p, df);
	do{ p++; } while(*p);

	// sozdaem sam fail bazi dannih
	if(!SQLConfigDataSource(NULL, ODBC_ADD_DSN, driver, cmd))
		return false;
	// sozdaem isto4nik dannih
	if(!SQLConfigDataSource(NULL, ODBC_ADD_DSN, driver, params))
		return false;
	// ny i sama stryktyra bazi 4erez CDatabase
	CDatabase db;
	db.OpenEx(dsn_c, CDatabase::noOdbcDialog);
	db.ExecuteSQL(
		 "CREATE TABLE alarms ( \
		id LONG NOT NULL PRIMARY KEY, \
		chislo LONG NOT NULL, \
		stroka VARCHAR(20 ))"
		);
	db.Close();
             // ili fynkciyami ODBC
             // SQLAllocHandle, SQLSetEnvAttr, SQLDriverConnect, SQLExecDirect i pr.
	return true;
}
...
Рейтинг: 0 / 0
21.03.2003, 12:06
    #32124506
Vector
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ЛЮДИ-ЧЕЛОВЕКИ! Подскажите реально: создать MS Access databse
Я создал свою базу данных с Access, и написал программу для работы с ней.
(Программка для заучивания английских слов).
Все делал через ADO.
Все работает.
Если есть вопросы вот мой ICQ: 111539928
Vector
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / ЛЮДИ-ЧЕЛОВЕКИ! Подскажите реально: создать MS Access databse / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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