Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC / 12 сообщений из 12, страница 1 из 1
12.08.2003, 10:54
    #32233690
Игорь_Ю
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
Нужно организовать перетаскивание содержимого таблицы Oracle`a в таблицу MS SQL Server.

кое-что я написал, но не пойму где если написать запрос будет храниться результат и как записывать в другую таблицу (толи целиком толи по столбцам)

Код: 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.
CDatabase OracleDB;
CDatabase SqlServerDB;

try
{
	OracleDB.Open( "Oracle Database" );
}
catch(...)
{
	AfxMessageBox( "Error Open DNS - Oracle Database" );
}
try
{
	SqlServerDB.Open( "MS SQL Server Database" );
}
catch(...)
{
	AfxMessageBox( "Error Open DNS - MS SQL Server Database" );
}

if (OracleDB.IsOpen()== 0 ) 
{
	AfxMessageBox( "Oracle Database  No Opened" );
} else 
{
	CRecordset crOracleDB; 
	crOracleDB.m_pDatabase=&OracleDB;
}

if (SqlServerDB.IsOpen()== 0 ) 
{
	AfxMessageBox( "MS SQL Server Database No Opened" );
} else 
{
	CRecordset crSqlServerDB; 
	crSqlServerDB.m_pDatabase=&SqlServerDB;
}

...
Рейтинг: 0 / 0
12.08.2003, 11:27
    #32233746
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
попробуй перетаскивать при помощи микрософтовского DTS?
делается в течении 2-5 минут, если особых наворотов не надо. А с наворотами и знанием Java я думаю не больше одного дня и работает все за милую душу...
...
Рейтинг: 0 / 0
12.08.2003, 11:34
    #32233763
Игорь_Ю
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
Java использует JDBC !
А мне нужно написать с использованием ODBC и на Visual C++
...
Рейтинг: 0 / 0
12.08.2003, 11:40
    #32233780
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
у тебя курсовая чтоль?
или нужно сделать работу?
если не знаешь, то пожалуйста, не стоит поправлять? я тебе предлагал не на Джаве писать.... посмотри что такое Data Transformation Services
...
Рейтинг: 0 / 0
12.08.2003, 11:46
    #32233793
Игорь_Ю
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
мне нужно написать программу используя классы MFC
...
Рейтинг: 0 / 0
12.08.2003, 11:47
    #32233795
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
если курсовая -- так бы и сказал
...
Рейтинг: 0 / 0
12.08.2003, 11:51
    #32233805
Игорь_Ю
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
не курсовая, а работа
...
Рейтинг: 0 / 0
12.08.2003, 11:52
    #32233811
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
тогда не вижу причин по которым следует упираться в конкретный метод...
тем баче что у Oracle есть средства как вытянуть данные, у MS SQL есть такие... но хозяин-барин :)
...
Рейтинг: 0 / 0
12.08.2003, 12:01
    #32233829
Игорь_Ю
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
зачем заморачиваться с OCI Оракла, если есть ODBC ?
...
Рейтинг: 0 / 0
12.08.2003, 12:18
    #32233854
olk
olk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
Код: 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.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
BOOL CunloadApp::ConnectToDatabases()
{
	TRY 
	{

	m_oraDb=new CDatabase();
	m_sqlDb=new CDatabase();

	m_oraDb->OpenEx(_T( "DSN=" )+m_store.db_ora_dsn+_T( ";UID=" )+m_store.db_ora_user+_T( ";PWD=" )+m_store.db_ora_psw,CDatabase::openReadOnly|CDatabase::noOdbcDialog);
	m_sqlDb->OpenEx(_T( "DSN=" )+m_store.db_sql_dsn+_T( ";UID=" )+m_store.db_sql_user+_T( ";PWD=" )+m_store.db_sql_psw,CDatabase::noOdbcDialog);
	}
	CATCH(CDBException,e)
	{
		e->ReportError();
		e->Delete();
		return FALSE;
	}
	END_CATCH;
	return (m_bConnectOk=TRUE);
}

void CunloadApp::DisconnectDatabases()
{
	TRY {
	if(m_oraDb && m_oraDb->IsOpen()) { m_oraDb->Cancel();m_oraDb->Close(); delete m_oraDb;}
	if(m_sqlDb && m_sqlDb->IsOpen()) { m_sqlDb->Cancel(); m_sqlDb->Close(); delete m_sqlDb;}
	m_bConnectOk=FALSE;
	}
	CATCH(CDBException,e)
	{
		e->ReportError();
		e->Delete();
	}
	END_CATCH;
}


void CunloadApp::UnLoad() 
{

	MSG message;
	TRY {
	COraRecordset m_oraRecordSet(m_oraDb);
	CSqlRecordset  m_sqlRecordSet(m_sqlDb);

	if(!m_sqlRecordSet.IsOpen()) m_sqlRecordSet.Open();
	if(!m_sqlRecordSet.IsOpen())
	{
		AfxMessageBox(IDS_SQL0001);
	             return;
	}

	if(!m_oraRecordSet.IsOpen()) 
               m_oraRecordSet.Open(CRecordset::forwardOnly,NULL,CRecordset::readOnly);

             if(!m_oraRecordSet.IsOpen())
	{
		AfxMessageBox(IDS_ORA0001);
	             return;
	}

	if(!m_oraRecordSet.IsEOF() && !m_oraRecordSet.IsBOF())
	{

		while(!m_oraRecordSet.IsEOF())
		{
		SaveSubject(m_oraRecordSet,m_sqlRecordSet);
	            	if(::PeekMessage(&message,NULL, 0 , 0 ,PM_REMOVE))
					{
					::TranslateMessage(&message);
					::DispatchMessage(&message);
					}
                          m_oraRecordSet.MoveNext();
		}

	}
	if(m_oraRecordSet.IsOpen()) m_oraRecordSet.Close();
	if(m_sqlRecordSet.IsOpen()) m_sqlRecordSet.Close();
	} // TRY

	
	CATCH(CDBException,e)
	{
		e->ReportError();
		e->Delete();
	}
	END_CATCH;
}

void CunloadApp::SaveSubject(COraSubject &ora, CSqlSubject &sql)
{
	TRY
	{
		if(ora.IsOpen() && sql.IsOpen())
		{

		sql.AddNew();
		sql.m_CNAME=ora.m_CNAME;
		sql.m_ID=ora.m_ID;
		sql.Update();
		}	  
		
	}
	CATCH(CDBException,e)
	{
		e->ReportError();
		e->Delete();
	}
	END_CATCH;


}

// afx_message map

void CunloadApp::OnButtonUnload()
{
 if(ConnectToDatabases()) 
 { UnLoad();
   DisconnectDatabases();
 }
}

...
Рейтинг: 0 / 0
12.08.2003, 12:23
    #32233863
olk
olk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
pacth :))
-- void CunloadApp::SaveSubject(COraSubject &ora, CSqlSubject &sql)
++ void CunloadApp::SaveSubject(COraRecordset &ora, CSqlRecordset &sql)
...
Рейтинг: 0 / 0
13.08.2003, 04:10
    #32234788
StarWind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC
Скорость (разработки и работы готового модуля), надежность, легкость модификации.
Для меня это определяющие факторы в данной проблеме (а вставала она у меня не раз)
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите произвести перетаскивание данных из обной табилицы в другую (через ODBC / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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