ACCESS、MSSQL数据库问题?

bmhhkyd 2000-12-08 07:00:00
使用VB(ADO)+MSSQL:
如何将本地ACCESS数据表的内容更快地添加到服务器MSSQL7数据库中?
(不使用Recordset的循环,速度太慢)
如何通过MSSQL的存储过程动态打开数据表,即:打开数据表名由传递给存储过程的参数决定
不使用 exec('select * from '+@sTablename),请给一段示例.
...全文
147 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dragonleon 2000-12-10
  • 打赏
  • 举报
回复
如果不要显示最好不用RS,速度太慢了,我目前深受其苦啊?有哪位同志知道,如果要在GRID里显示数据,能不能用什么别的方法代替RS?
yangzi 2000-12-10
  • 打赏
  • 举报
回复
SQL 有这样一条语句:insert into ONE_table(fieldname1,2,...) select fieldname1,2,... from OTHER_table.
one_table里的字段必须与other_table里的字段相对应。
你可以假设one_table在SQL server里,other_table在access里,
我以前处理过这种问题,就用上面的思路,现在记不清具体怎样写了,你自己查一下吧,这样肯定是可以的。
第二问题,你可以建立存储过程呀,在存储过程里以字符串方式传入表名。处理后,将你所需的数据打包成字符串返回,在客户端解析它,这样是最快的。
不要返回结果集,那样很慢。
dqj 2000-12-10
  • 打赏
  • 举报
回复
:
bmhhkyd 2000-12-09
  • 打赏
  • 举报
回复
请各位大侠帮助!
ePing 2000-12-09
  • 打赏
  • 举报
回复
:)MSSQL7有Import的功能,具體的你去看一下.
:)基本的解決方案就是使用 exec來做的,我不知道有甚麼不好,能具體的指出你的需求.我想你的意思多半是用exec的話,所有定義的變量都不能在exec裡面使用,可以採用一種方式
declare @SqlStr varchar(100)
Select @SqlStr = 'select * into ##TableName from ' + @sTableName
Exec(@SqlStr)
這樣的話,全局臨時表就可以用到別的變量.
希望有一點幫助.

三少 :o)
bmhhkyd 2000-12-09
  • 打赏
  • 举报
回复
ePing你好:谢谢你的回答。
由于提问时说的不清楚现重述如下:VB(ADO)+MSSQL7 (C/S)
1、在操作数据表时,由于每次修改的数据量比较大,在设计时将服务器端的数据通过SQL语句读取到客户端,在客户端通过ACCESS数据表缓存,客户端所有的数据修改都在本地ACCESS数据表中完成,待数据修改完成后在将本地ACCESS数据表中的内容提交到MSSQL,使用RECORDSET的循环操作时速度比较慢,有没有更好的方法加快数据的提交?
2、由于每月要产生30000条左右的数据,并且还要增加,为了提高数据的访问效率,计划将1年产生的数据存放到一个(或几个)表中,需要能动态建立MSSQL数据表,数据表名为YYYYMM(年月)
这样带来的问题就是能:动态建立、打开、统计数据表。有没有更好的方法而不使用Exec('SQL语句')?

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧