access 里的查一个数据库里的 所有表名的sql语句

如题所述

第1个回答  2011-04-07
貌似Access没有类似SQL Server的存储问表名的系统表或视图。
或者你可以参考一下链接,用VBA实现。
http://msdn.microsoft.com/en-us/library/Aa165325
第2个回答  2011-04-07
给你一个ASP的小程序
<%
Const adSchemaTables = 20
adSchemaColumns = 4
Set oConn = Server.CreateObject("ADODB.Connection")
DataSource=Server.MapPath("./Dvbbs7.mdb")'这里是数据库的相对地址
str="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&DataSource
oConn.open str
Set rstSchema = oConn.OpenSchema(adSchemaColumns)
response.write "<table>"
response.write "<tr><td>Table name</td><td>field name</td><td>field type</td><td>is nullable</td><td>field size</td></tr>"
tablename=""
Do Until rstSchema.EOF
response.write "<tr><td>"
if rstSchema("Table_name") <> tablename then
response.write rstSchema("Table_name")
tablename = rstSchema("Table_name")
else
response.write " "
end if
response.write "</td><td>"& rstschema("column_Name") & "</td><td>"
select case rstschema("data_type")
case "130"
if rstschema("CHARACTER_MAXIMUM_LENGTH") = 1073741823 then
response.write "Memo"
else
response.write "Text"
end if
case 135
response.write "Date/Time"
case 3
response.write "Long Integer"
case 11
response.write "Yes/No"
case 131
response.write "Currency"
case else
response.write rstschema("data_type")
end select
response.write "</td><td>" & rstschema("is_nullable") & "</td><td>"
if rstschema("CHARACTER_MAXIMUM_LENGTH") <> 1073741823 then
response.write rstschema("CHARACTER_MAXIMUM_LENGTH")
else
response.write " "
end if
response.write "</td></tr>"
rstSchema.MoveNext
Loop
response.write "</table>"
%>
抄的,但是可以用的,你可以分析一下SQL,自己弄一下,偷懒了哈哈

以下是获得字段名的
rs.fields.count
得到要查询的字段总数
for i=0 to rs.fields.count
rs.fields(i).name
这样可以得到字段名
next
第3个回答  2011-04-09
为了看到一个查询所对应的SQL语句,可以将查询设计视图转换到SQL视图中来观察。在查询设计视图中执行“视图”|“SQL视图”命令,即进入SQL视图。在视图中可以看到当前设计的查询所对应的SQL语句。用户对查询所做的修改,都会导致对应SQL语句的变化。
SQL是“结构化查询语言”的英文缩写。按功能不同可以分为:数据定义语句、数据操作语句、操作管理语句、数据控制语句、数据查询语句和游标控制语句等。
数据查询语句的主要语句是SELECT语句,其语法如下:
SELECT[predicate]{* |table. * | [table.] field [AS aliasl] [,[table.] field2 [AS alias2] [,```]]}
FROM tableexpression [,...] [IN externadatatabase] [WHERE....]
[GROUP BY .....][HAVING......] [ORDER BY....]
举例子吧。从Employees 表中选择出部门并从Supervisors表中选择出主管名。
SELECT Employees. Department,Supervisors.SupvName
FROM Employees INNER JOIN Supervisors
WHERE Employees.Department=Supervisors.Department