如何查询一个ACCESS数据库中的表名和字段?

作者&投稿:夷物 (若有异议请与网页底部的电邮联系)
access数据库里有2个表 有一个相同的字段 想让另一个字段一样怎么做?~

update 第二个表 set 第二个表.wp_lbid=第一个表.lb_id from 第二个表,第一个表 where 第二个表.wp_lb=第一个表.lb_mz

instr('abc','b')这个写法
select A.a from A WHERE EXISTS (SELECT 1 FROM B WHERE instr(A.a,B.b) > 0)

数据库知识—SQL查询语句精华使用简要

一、 简单查询

简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等。
例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。

SELECT nickname,email
FROM testtable
WHERE name=张三

(一) 选择列表

选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。

1、选择所有列

例如,下面语句显示testtable表中所有列的数据:

SELECT *
FROM testtable

2、选择部分列并指定它们的显示次序

查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。
例如:

SELECT nickname,email
FROM testtable

3、更改列标题

在选择列表中,可重新指定列标题。定义格式为:
列标题=列名
列名 列标题
如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题:

SELECT 昵称=nickname,电子邮件=email
FROM testtable

4、删除重复行

SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。

5、限制返回的行数

使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。
例如:

SELECT TOP 2 *
FROM testtable
SELECT TOP 20 PERCENT *
FROM testtable

(二)FROM子句

FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。
在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定:

SELECT username,citytable.cityid
FROM usertable,citytable
WHERE usertable.cityid=citytable.cityid

在FROM子句中可用以下两种格式为表或视图指定别名:
表名 as 别名
表名 别名

(二) FROM子句

FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。
在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定:

SELECT username,citytable.cityid
FROM usertable,citytable
WHERE usertable.cityid=citytable.cityid

在FROM子句中可用以下两种格式为表或视图指定别名:
表名 as 别名
表名 别名
例如上面语句可用表的别名格式表示为:

SELECT username,b.cityid
FROM usertable a,citytable b
WHERE a.cityid=b.cityid

SELECT不仅能从表或视图中检索数据,它还能够从其它查询语句所返回的结果集合中查询数据。

例如:

SELECT a.au_fname+a.au_lname
FROM authors a,titleauthor ta
(SELECT title_id,title
FROM titles
WHERE ytd_sales>10000
) AS t
WHERE a.au_id=ta.au_id
AND ta.title_id=t.title_id

此例中,将SELECT返回的结果集合给予一别名t,然后再从中检索数据。

(三) 使用WHERE子句设置查询条件

WHERE子句设置查询条件,过滤掉不需要的数据行。例如下面语句查询年龄大于20的数据:

SELECT *
FROM usertable
WHERE age>20

WHERE子句可包括各种条件运算符:
比较运算符(大小比较):>、>=、=、、!>、!=10 AND age、>=、、!。
3、自然连接:在连接条件中使用等于(=)运算符比较被连接列的列值,但它使用选择列表指出查询结果集合中所包括的列,并删除连接表中的重复列。
例,下面使用等值连接列出authors和publishers表中位于同一城市的作者和出版社:

SELECT *
FROM authors AS a INNER JOIN publishers AS p
ON a.city=p.city
又如使用自然连接,在选择列表中删除authors 和publishers 表中重复列(city和state):
SELECT a.*,p.pub_id,p.pub_name,p.country
FROM authors AS a INNER JOIN publishers AS p
ON a.city=p.city

(二)外连接
内连接时,返回查询结果集合中的仅是符合查询条件( WHERE 搜索条件或 HAVING 条件)和连接条件的行。而采用外连接时,它返回到查询结果集合中的不仅包含符合连接条件的行,而且还包括左表(左外连接时)、右表(右外连接时)或两个边接表(全外连接)中的所有数据行。如下面使用左外连接将论坛内容和作者信息连接起来:

SELECT a.*,b.* FROM luntan LEFT JOIN usertable as b
ON a.username=b.username

下面使用全外连接将city表中的所有作者以及user表中的所有作者,以及他们所在的城市:

SELECT a.*,b.*
FROM city as a FULL OUTER JOIN user as b
ON a.username=b.username

(三)交叉连接
交叉连接不带WHERE 子句,它返回被连接的两个表所有数据行的笛卡尔积,返回到结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。例,titles表中有6类图书,而publishers表中有8家出版社,则下列交叉连接检索到的记录数将等于6*8=48行。

SELECT type,pub_name
FROM titles CROSS JOIN publishers
ORDER BY type

在access中设置如下:工具-》选项-》试图,然后勾中“系统对象”,这时在access
里可以看见这个表:MSysObjects,字段“name”就是该数据库中的表名和一些对象。

你可以直接通过SQl语句查询出来了

简单的用一个F*集合就可以就可以读出全部的表名了及数据

给你一个示范:
string str="select * from xxxtable";
OleDbConnection con=new OleDbConnection("provider=microsoft.jet.oledb.4.0;data source="+System.Web.HttpContext.Current.Server.MapPath("../xxx/xxx.mdb"));
con.Open();
OleDbCommand cmd=new OleDbCommand(str,con);
OleDbDataReader dr=cmd.ExecuteReader();
while(dr.Read())
{

xxxxxxxxxx

}
dr.Close();
con.Close();
欢迎访问我刚做的作品,
如果你在那上面提问,我更会帮你解答。
www.fasp.com.cn/kevind

是ACCESS,老大们.你们怎么回答的.
工具-选项-试图,然后勾中“系统对象”,这时在access
里可以看见这个表:MSysObjects,字段“name”就是该数据库中的表名和一些对象。

给你个示范,
<%
star=request.form("star")
set rs=conn.execute("select * from ycdy where instr(star,'"+star+"')")
do while not rs.eof
%>
<div align="center">
<table width="100%" border="1" cellspacing="1" height="220" bordercolor="#C0C0C0">
<tr bgcolor="#FFFFFF">
<td width="100" rowspan="6" height="140">
<a target="_blank" href="see.asp?id=<%=rs("id")%>"><img border="0" src="dytp/<%=rs("id")%>.jpg" width="100" height="140"></a></td>
<td align="left" width="64">影片分类:</td>
<td align="left" width="495"><%=rs("sort")%></td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left">影片名称:</td>
<td align="left"><a target="_blank" href="see.asp?id=<%=rs("id")%>"><%=rs("name")%></a></td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left">领衔主演:</td>
<td align="left"><%=rs("star")%></td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left">碟片类型:</td>
<td align="left"><%=rs("dp")%></td>
</tr>
<tr bgcolor="#FFFFFF">
<td align="left">加入时间:</td>
<td align="left"><%=rs("time1")%></td>
</tr>
<tr>
<td align="left">影片编号:</td>
<td align="left"><%=rs("id")%></td>
</tr>
<tr bgcolor="#FFFFFF">
<td width="103">影片简介:</td>
<td colspan="2" width="564"><%=rs("cont")%></td>
</tr>
<tr bgcolor="#FFFFFF">
<td colspan="3" height="17"></td>
</tr>
</table>
</div>

<%
rs.movenext
loop
rs.close
set rs=nothing
conn.close
set conn=nothing
%>


柳林县18627318468: access数据库已有的资料怎么查询 -
盖秦麦滋: 使用语句查询需要有sql基础,但有一定水准以后才能熟练应用,这里只说一下使用access中sql视图的方法: 1、打开access的文件 2、点击上方菜单栏的创建-查询设计 3、弹出的小窗口点关闭

柳林县18627318468: 如何查询ACCESS数据库中的记录 -
盖秦麦滋: 写小程序最简单的自然是VB 最流行的是C#和JAVA ACCESS支持简单的SQL语句, 如果是VB或者C#,在程序中使用SELECT语句就可将你需要查询的表显示在DataGrid中

柳林县18627318468: 怎么查询ACCESS数据库中的任意一列
盖秦麦滋: name列的所有内容:select name from 表名 指定姓名:select name from 表名 where name="张三"

柳林县18627318468: 如何在access中根据某项内容查询其他信息 -
盖秦麦滋: 在数据库菜单里找到查询设计器,在查询设计器里选择按照向导创建一个查询,选择数据源选择你刚才建立的数据表,把里面字段全部选中,下一步、下一步执行下去,完成后右键点在查询上面选择设计,在设计视图中有表格,最上面的是数据源,下面第一行是字段名称,第二行是表名称,第三行是排列规则,第四行是分类汇总方法,第五行没有数字的是条件行,在姓名字段对应条件行里输入=[请输入姓名],当你打开查询的时候就提示你请输入姓名,在里面输入,FORMS!窗体名称!控件名称,就是依据窗体控件来筛选一个条件.你也可以采取另一种方法,就是直接右键点在查询的设计视图上选择SQL语句,在里面直接输入:SELECT * FROM 表名称 WHERE 姓名=[请输入姓名];

柳林县18627318468: access数据库中用SQL语句查询某个字段 -
盖秦麦滋: 先通过 SQL 语句把 相关的信息查找出来 select * from cpxh where chxh like 'hyf001%' or chxh like 'lyf%' 打开记录集,,再判断该记录集的指针有没有指向最后一条记录 if not rs.eof then // 如果不是最后一条记录 insert into 表(字段) values('值') //那么就把该记录插到另外的一张表中 最后更新数据表

柳林县18627318468: access中怎么用工具查询记录access中怎么用工具查询记录
盖秦麦滋: 1:利用剪贴板 在Access 中,打开要转换的表并查询.将鼠标指针拖过所选记录的行选择器(在窗口的最左端,当鼠标置于其上时,鼠标指针会变成向右方向的箭头),...

柳林县18627318468: ACCESS查询与窗口如何用? -
盖秦麦滋: 可以通过Access的向导功能,创建一个简单的查询,分以下几步:1、Access 需要先建一个表,用于存放这些信息(姓名,年龄,……);2、创建一个查询,加入你需要的字段;3、创建一个窗体,加入查询框(文本框),加入一个查询按钮,在按钮的点击代码中,调用查询表,查询条件为窗体上的查询框内容组合.

柳林县18627318468: ACCESS查询含有指定数据的字段怎么实现 -
盖秦麦滋: 改成这样就可以了: Like '*' & [输入查询参数值] & '*'楼上的应该有问题,ACCESS的通配符是*,而SQL的通配符才是%

柳林县18627318468: 使用数据库access窗体中进行查询 -
盖秦麦滋: 容易. 如果你是在本窗体查询: 在本窗体中添加一个文本框(text1),在该文本框的更新后事件中写以下代码: Me.Filter = "字段名称 like '*" & Me.Text1 & "*'" Me.FilterOn = True如果你是在主窗体中查询,在子窗体显示查询后结果: 在本...

柳林县18627318468: 如何一次查询一个ACCESS数据库的所有表和字段? -
盖秦麦滋: Option Explicit Private Sub addcmd_Click() Dim songname As String Dim songpath As String Dim songtype As String Dim ilist As Integer Dim jlistmax As Integer Dim i As Integer Dim adocnn As ADODB.Connection Dim adorst As ADODB....

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网