要实现这个功能的话一般都是如下,现在比如数据库为当前目录下的123mdb,其中的表名为:person;的字段是:name,sex,age这几个;
页面一:onehtml;
在body里面加入一下代码
<form action="dealasp" method="post">
<input type="text" size="20" name="p_name" /> <input type="radio" name="s_type" value="equal" checked="checked" />精确查询 <input type="radio" name="s_type" value="like" />模糊查询 <input type="submit" value="提交" />
</form>
页面二:dealasp在body里面加入以下代码
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<th>名字</th>
<th>性别</th>
<th>年龄</th>
</tr>
<%
'连接数据库
db = "123mdb"
connstr = "DBQ=" + servermappath(""&db&"") + ";DefaultDir=;DRIVER={Microsoft Access Driver (mdb)};"
Set conn = serverCreateObject("ADODBCONNECTION")
connOpen connstr
set rs = serverCreateObject("adodbrecordset")
'查询数据库
p_name = requestForm("p_name")'要查询的名字
s_type = requestForm("s_type")'要查询的类型,精确查询还是模糊查询
if s_type = "like" then'模糊查询
sql = "select from person where name like '%"&p_name&"%'"
else
sql = "select from person where name = '"&p_name&"'"
end if
rsopen sql,conn,1,1
do while not rseof%>
<tr align="center">
<td><%=rs("name")%></td>
<td><%=rs("sex")%></td>
<td><%=rs("age")%></td>
</tr>
<%rsmovenext
loop
rsclose
%>
</table>
如果你要查出来只有一条记录的话,你的name字段必须是唯一的
老板给2张表(《基本信息数据库》、《工资信息》),要求把《工资信息》员工的卡号搬到《基本信息数据库》中,但2张表中员工名称顺序是乱的,怎么办?如图所示:
只有几个人的时候,你可以一个一个地挨着Ctrl+c and Ctrl+v,但有几十个,几百个呢?怎么办……别着急,“微软大法好,Excel救众生”,在《基本信息数据库》中的I3单元格输入函数=VLOOKUP(A3,[工资信息xls]Sheet1!$A$3:$B$32,2,0),再敲回车键,是不是发现《工资信息》中“刘二”的工资卡号已经出现在了《基本信息数据库》中了呢神奇吧……
接下来就是嗨皮的时候了,把鼠标放I3单元格右下方,等鼠标变成“十字”形后,往下填充其它单元格就OK了,怎么样,如果遇到几百人,这么几分钟就完成了几天的工作,有木有很开森啊。
同理,您也可以照刚才方法把7月的工资一起搬到《基本信息数据库》中。在J3中输入=VLOOKUP(A3,[工资信息xls]Sheet1!$A$3:$H$32,3,0),注意哦,引用范围变了,由$A$3:$B$32变成了$A$3:$H$32,看清了没?倒数第二个数字也由2变成了3哟。(为什么变请参考最后一步的公式解剖)
8月、9月、10月、11月、12月 *** 作只需要把公式中倒数第二位数字改成《工资信息》表中相对应的例数即可实现。
解剖公式“=VLOOKUP(A3,[工资信息xls]Sheet1!$A$3:$B$32,2,0)”原理。VLOOKUP函数是Excel中非常强大的一个孩子,有一个庞大的家族,包括lookup()、hlookup()、vlookup(),个人是比较喜欢vlookup(),工作中用它从未出过岔子。在上述函数中:
1、“A3”表示《基本信息数据库》和《工资信息》的查询值,相当于中间人,把两个表联系起来。
2、“[工资信息xls]Sheet1!”这是一个查询的路径,注意“sheet1!”里那个感叹号不可以省略。
3、“$A$3:$B$32“这是在《工资信息》表中需要查询的区域,加了“$"符号表示绝对引用,在Excel查询时,指针查到了某人后,加了“$"代表要求指针返回第一行重新查询,否则指针就从上一次查询到的行查询,会遗漏查询信息。
4、“2”表示要提取第2列的数据。
5、“0”表示精确查找,建议大家千万别尝试模糊查找,会让你伤心的。
--SQLServer:一、 *** 作步骤首先进入数据库级别的安全性-登录名-新建登录名(图1:新建登录名)2在常规选项卡中,如下图所示,创建登陆名,并设置默认的数据库。(图2:设置选项)3在用户映射选项卡中,如下图所示,勾选需要设置的数据库,并设置架构,点击确认按钮,完成创建用户的 *** 作(图3:选择对应数据库)4现在我们就可以对TestLog数据库中的User表进行权限的设置了,表-属性(图4:选择对应表)5在权限选项卡中,如下图所示,依此点击添加-浏览-选择对象(图5:设置访问表的用户)6在上面点击确认后,我们就可以下面的列表中找到对应的权限,如果你还想细化到列的权限的话,右下角还有一个列权限的按钮可以进行设置,点击确认按钮就完成了这些权限的设置了(图6:权限列表)7现在就使用TestUser用户登陆数据库了,登陆后如下图所示,现在只能看到一个表了(图7:效果)二、注意事项在上面的第3步骤中需要注意:如果这里没有选择对应的数据库的话,之后去TestLog数据库中是找不到TestUser。(图8:找不到TestUser用户)2在上面的第3步骤,设置完TestLog数据后,需要点击确认按钮,完成创建用户 *** 作,如果这个时候去设置安全对象,是无法在添加-特定对象-对象类型-登陆名-浏览中找到刚刚新建的TestUser用户的。3其实在数据库级别的安全性创建的用户是属于全局的,当设置了某个数据库,比如TestLog之后,这个用户就会出现在这个数据库的安全性列表中。如果删除TestLog这个用户,会出现下面的提示。删除了后,这个用户就无法登陆了。需要去对应的数据库中删除用户,如果没有删除又创建,是会报错的。(图9:删除TestUser用户)4在第6步的显式权限列表中,如果选择了Control这个选项,那么在Select中设置查询列权限就没有意义了,查询就不会受限制了。如果设置列权限,在正常情况下会显示下图的报错信息:(图10:效果)5在TestLog数据库的安全性-TestUser-属性-安全对象-添加-对象类型这里有关于数据库级别的一些对象类型可以设置。(图11:其它对象类型)
select from all_tables;--显示当前用户能访问的所有表
select from dba_tables;--显示数据库中的所有表,但是普通用户没有访问权限
你说的姓名数据库和工资号数据库, 应该都是指表,
表是包含在数据库中的
假定你有表:员工表,字段有员工编号,姓名
工资号表, 字段有员工编号,工资号
两表通过员工编号关联
1,为2个表分别在员工编号上设立索引
2,将2个表添加进表单的数据环境,并设置order属性为员工编号(使员工编号索引生效)
3,在表单的init事件中设定2表关系:
select 员工表
set relation to 员工编号 into 工资号表
4,放置一个文本框用来输入姓名, 放置一个按钮,用来查询, click代码如下:
select 员工表
locate for alltrim(姓名)=alltrim(thisformtext1value)
if found()
这里显示工资号表里的记录, 因为2表关联, 工资号表只显示指定员工编号的记录
endif
以上就是关于求一段asp查询代码,要能输入名字就能查出来他在数据库表中的所有信息,我还真是菜鸟啊全部的内容,包括:求一段asp查询代码,要能输入名字就能查出来他在数据库表中的所有信息,我还真是菜鸟啊、excel如何根据数据值 提取对应的名称、如何在sqlserver建立新用户并关联相应的数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)