大家好,前几天关于(VC+ADO)怎么创建.mdb文件的问题得到了解答!感谢马江王,他提供了DAO与ADO共存的办法;但是我最后是用水银的ADO与ADOX共存的办法去做的!再次感谢!*************************************************************************今天的问题是,我已经连接到了SQL SERVER,并且已经建立了一个空的ACCESS数据库(没有表在其中)。请问各位,我要怎么才能把SQL SERVER中的一个表完全复制到这个空的ACCESS数据库中?(我使用的是VC6.0+ADO&ADOX)感谢大家!希望多给点建议!水银大哥,继续帮兄弟哦!
解决方案 »
- TransparentBlt 能支持光栅操作吗
- 通过PostMessage 和 SendMessage 发送键盘消息和真正按键盘得到的消息一样吗?
- 如何调整MenuBar的位置,我想将它往下移动一段距离。
- 终于弄到了半条命的源代码.
- 不同对话框中的控件使用相同的id会有问题吗?
- ****************如何生成安装文件*************
- 哪位大侠有CSocket的好的中文文章或教程(只要CSocket的编程,不要winsock API的),如果不大可不可以EMAIL给
- 如何防止重复包含?
- CSDN把我搞晕了,改版太失败了
- 托盘图标的按键信息怎么接收及处理?
- 一个网上两台机器通信的问题
- 关于数据库的问题?
2:利用Bcp工具
3. 在应用程序中定制
1> select ... into new_tablename where ...
2> insert (into) old_tablename select ... from ... where ...
在所有的数据转换服务 (DTS) 工具中,DTS 导入/导出向导为在 OLE DB 数据源之间复制数据提供了最简单的方法。在连接到源和目的之后,可以选择要导入或导出的数据,并可对要复制的数据应用各种转换
_variant_t vtData;
vtData=pOracleSet->GetFields()->GetItem(field_name)->Value;
pSQLSet->GetFileds()->GetItem(field_name)->Value=vtData;
2,如果目标数据库没有对应的表,那么用SQL语句在目标数据库建立一张对应结构的表,再进行复制
第二种方案就是采用dts:
可以查看Sql server的联机帮助,在Sql server应用程序下面
还可以参考这片
http://www.codeproject.com/database/dts.asp
我现在连接到SQL数据库是没问题的!要取这个数据库的3个表,我想一个一个做也一样!是不是要先声明一个_RecordsetPtr对象,然后用它去取得表的信息?然后再连接ACCESS数据库,然后用这些取得的信息去创建表呢?HOHO~~~~能不能像上次一样给点代码啊?
bigint adBigInt
binary adBinary
bit adBoolean
char adChar
datetime adDBTimeStamp
decimal adNumeric
float adDouble
image adVarbinary
int adInteger
money adCurrency
nchar adWChar
ntext adWChar
numeric adNumeric
nvarchar adWChar
real adSingle
smalldatetime adTimeStamp
smallint adSmallInt
smallmoney adCurrency
sql_variant adVariant
sysname adWChar
text adChar
timestamp adBinary
tinyint adVarbinary
uniqueidentifier adGUID
varbinary adVarbinary
varchar adChar
Dim tbl As New Table
Dim cat As New ADOX.Catalog
' Open the Catalog.
cat.ActiveConnection = "Provider='Microsoft.Jet.OLEDB.4.0';" & _
"Data Source='c:\Program Files\Microsoft Office\" & _
"Office\Samples\Northwind.mdb';"
tbl.Name = "MyTable"
tbl.Columns.Append "Column1", adInteger
tbl.Columns.Append "Column2", adInteger
tbl.Columns.Append "Column3", adVarWChar, 50
cat.Tables.Append tbl
Debug.Print "Table 'MyTable' is added."
'Delete the table as this is a demonstration.
cat.Tables.Delete tbl.Name
Debug.Print "Table 'MyTable' is deleted."
'Clean up
Set cat.ActiveConnection = Nothing
Set cat = Nothing
Set tbl = Nothing
Exit Sub
我的问题是:
我现在编一个程序,实现从DBF表到SQL Server的转换:
我用ADO+VC做
分别为两个数据库建里一个Conn对象
现在问题是:
我想把DBF中的一个表拷贝到SQL Server中,但SQL Server中还没有
定义相同的表
for(int i=0;i<Count1;i++){
pRecordSet2->AddNew();
pRecordSet2->Fields->GetItem((long)i)->Value=pRecordSet1->Fields->GetItem((long)i)->Value;
pRecordSet2->Update();
}
为什么会错?
出错类型:This application has requested th e TRuntime to terminate it in an unusual way
大不了将SQL的表导出为文本文件,再将文本文件导入为ACCESS
insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0','d:\aa.mdb';'admin';'', tablename) (field_1,field_2.....) select field_1,field_2..... from tablename1