Foxtable(狐表)用户栏目专家坐堂 → [求助] foxtable 中 insert into 语句应用


  共有10927人关注过本帖树形打印复制链接

主题:[求助] foxtable 中 insert into 语句应用

帅哥哟,离线,有人找我吗?
jspta
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
[求助] foxtable 中 insert into 语句应用  发帖心情 Post By:2012/8/5 16:01:00 [只看该作者]

ACCESS数据源,语法如下,

insert into {表1} (strNo) select "KN" union all select "KNn"

这句话在foxtable中怎么不能用哪?


 回到顶部
帅哥哟,离线,有人找我吗?
muhua
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2012/8/6 8:40:00 [只看该作者]

用户已被锁定

 回到顶部
帅哥哟,离线,有人找我吗?
jspta
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2012/8/6 11:41:00 [只看该作者]

SQL这张大部分都是select,关于这部分很少,

insert into {表1} (strNo) select "KN"

你可以去试下,这句话绝对没问题,

insert into {表1} (strNo) select "KN" union all select "KNn"

不过是一次插入多行,用union all 合并。这句话是网上查到的,并没有实践过,但我想应该没有问题的,可是foxtable不能使用。

联合查询比多次查询速度快,所以我想写个一次插入多条,速度应该比多次插入快的。


 回到顶部
帅哥哟,离线,有人找我吗?
zhangqinyun
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:272 积分:2324 威望:0 精华:0 注册:2011/7/14 16:23:00
  发帖心情 Post By:2012/8/6 11:46:00 [只看该作者]

我也是Access 一条一条写是很慢,我上次100多天,写了3分钟。

 

我用的方法是创建个加载窗口,窗口里有Tbale空间(隐藏的)

 

用Table.Fill绑定要写入的窗口

 

再用AddNew写入数据

 

然后Save Table

 

最后关闭窗口

 

这样快很多,但也不是很好,感觉,谁有更好的方法阿。。。


 回到顶部
美女呀,离线,留言给我吧!
yangming
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:4109 积分:23338 威望:0 精华:21 注册:2008/9/1 20:07:00
  发帖心情 Post By:2012/8/6 11:58:00 [只看该作者]

Dim cmd As New SQLCommand
cmd.ConnectionName =
"数据库名"

cmd.CommandText =
"nsert into {表1} (strNo) select 'KN' union all select 'KNn' "

这样试试

 回到顶部
帅哥哟,离线,有人找我吗?
jspta
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2012/8/6 13:43:00 [只看该作者]

以下是引用zhangqinyun在2012-8-6 11:46:00的发言:

我也是Access 一条一条写是很慢,我上次100多天,写了3分钟。

 

我用的方法是创建个加载窗口,窗口里有Tbale空间(隐藏的)

 

用Table.Fill绑定要写入的窗口

 

再用AddNew写入数据

 

然后Save Table

 

最后关闭窗口

 

这样快很多,但也不是很好,感觉,谁有更好的方法阿。。。

100条3分钟应该不至于把,一条select SQL语句,大约0.02秒,insert  也差不多,10秒钟最多了把。

为什么我不用这绑定表那?这是系统记录,不需要载入。一次操作基本感觉不到。我只是想优化下


 回到顶部
帅哥哟,离线,有人找我吗?
jspta
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2012/8/6 13:47:00 [只看该作者]

以下是引用yangming在2012-8-6 11:58:00的发言:
Dim cmd As New SQLCommand
cmd.ConnectionName =
"数据库名"

cmd.CommandText =
"nsert into {表1} (strNo) select 'KN' union all select 'KNn' "

这样试试

好像还是不行,可能是不支持,就这样把,应该没问题的


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2012/8/6 14:43:00 [只看该作者]

内部表,不允许Insert Into,请改用外部数据源。

 回到顶部
帅哥哟,离线,有人找我吗?
jspta
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2012/8/6 14:52:00 [只看该作者]

以下是引用狐狸爸爸在2012-8-6 14:43:00的发言:
内部表,不允许Insert Into,请改用外部数据源。

是用外部数据源,

insert into {表1} (strNo) select "KN" 这句没有问题

但是这句insert into {表1} (strNo) select "KN" union all select "KNn" 就出错了,提示操作符丢失什么的。


 回到顶部
帅哥哟,离线,有人找我吗?
muhua
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:等待验证 帖子:3855 积分:20692 威望:0 精华:5 注册:2012/6/21 14:03:00
  发帖心情 Post By:2012/8/6 17:31:00 [只看该作者]

用户已被锁定

 回到顶部