ホームページ  >  記事  >  データベース  >  ACCESS的真假:四、"SELECT * INTO 工作表 FROM 临时表&quo

ACCESS的真假:四、"SELECT * INTO 工作表 FROM 临时表&quo

WBOY
WBOYオリジナル
2016-06-07 15:37:501880ブラウズ

下面这个贴子中讨论了很多ACCESS中的一些猜想假设。 Access或其它数据库操作效率问题.欢迎讨论 http://topic.csdn.net/u/20090514/10/a93475bd-e67e-45c8-aa1e-87168ba36d02.html#replyachor 引用 55 楼 wwwwb 的回复:: create table是用什么方法?我一般是

下面这个贴子中讨论了很多ACCESS中的一些猜想假设。

Access或其它数据库操作效率问题.欢迎讨论

http://topic.csdn.net/u/20090514/10/a93475bd-e67e-45c8-aa1e-87168ba36d02.html#replyachor

引用 55 楼 wwwwb 的回复::
create table是用什么方法?我一般是将空的工作表另存为一个临时表,
用SELECT * INTO 工作表 FROM 临时表 方法建立,这种方法比delete from table
还要慢?
这种方法的局限是如果有表间关系是不能删除的。

当看到这个猜想的时候,感觉比较怀疑。因为 select * into newtable from oldTable,ACCESS需要先从oldTable得到所有字段的定义,然后才能进行表的创建。如果猜想成立,就说明ACCESS还有一套什么机制可以直接在底层对表的结构进行访问。但select 可以是任意的查询,这样也不太可能啊。 于是,依然做个简单的试验来难证一下这个猜想。

新建空 t.mdb ,然后创建一个模块,代码如下。

步骤一:运行 ti()创建一个原表 table2 以供后面的 select * into newtable from oldTable 使用。
步骤二:运行 t() 结果如下。
t1 start.     5/23/2009 3:06:54 PM
t1 end  .     5/23/2009 3:07:03 PM
t2 start.     5/23/2009 3:07:17 PM
t2 end  .     5/23/2009 3:07:29 PM

t1() 9s , t2() 12s

 

试验结论: 猜想不成立

 

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。