注册 登录
编程论坛 ASP技术论坛

级联查询

ab382717036 发布于 2011-03-22 19:15, 1116 次点击
我知道这个查询语句是错的可是不知道怎么改,哪位大虾帮帮忙  select * from test a left join PersonTbl b on a.PerId=b.PerId where PerId = "& PerId
18 回复
#2
ab3827170362011-03-23 13:45
为什么没人回答我的问题
#3
yms1232011-03-23 14:52
你要查询什么?
#4
ab3827170362011-03-23 15:36
我想根据已经知道的PerId值,去查询有关系的2个表
只有本站会员才能查看附件,请 登录
#5
yms1232011-03-23 16:47
查询两个表的信息还可以用多表查询
select * from PersonTbl,test Where PersonTbl.PerId=1 or test.PerId=1
#6
ab3827170362011-03-23 19:38
能不能用事务来表达,但是事务怎么写啊
#7
ab3827170362011-03-23 19:55
我这样写行吗  
conn.begintrans
Rs.Open "select * from PersonTbl where PerId = "& PerId , Conn , 1 , 1
If Rs.Eof Then
    Question = ""
    Answer = ""
    Email = ""
   
    RealName = ""
    Sex = ""
    Age = ""
    Nation = ""
    Political = ""
    Birthplace = ""
    Marriage = ""
    Qualification = ""
    Standing = ""
    Weight = ""
    Salary = ""
    Nature = ""
    Position_b = ""
    Position_s = ""
    JobPost = ""
    areaname = ""
    NowAddr = ""
    HomeAddr = ""
    QQ = ""
    MSN = ""
    Tel = ""
    Mobile = ""
   
    IsHidden = ""
    IsLock = ""
    IsTj = ""
    IsGj = ""
    IsSh = ""
    LoginQuantity = ""
    ThisLoginDate = ""
    ThisLoginIp = ""
    ViewQuantity = ""
   
    RegFromIp = ""
    RegDate = ""
Else
   
    Question = Rs("Question")
    Answer = Rs("Answer")
    Email = Rs("Email")
   
    RealName = Rs("RealName")
    Sex = Rs("Sex")
    Age = Rs("Age")
    Nation = Rs("Nation")
    Political = Rs("Political")
    Birthplace = Rs("Birthplace")
    Marriage = Rs("Marriage")
    Qualification = Rs("Qualification")
    Standing = Rs("Standing")
    Weight = Rs("Weight")
    Salary = Rs("Salary")
    Nature = Rs("Nature")
    Position_b = Rs("Position_b")
    Position_s = Rs("Position_s")
    JobPost = Rs("JobPost")
    areaname = Rs("areaname")
    NowAddr = Rs("NowAddr")
    HomeAddr = Rs("HomeAddr")
    QQ = Rs("QQ")
    MSN = Rs("MSN")
    Tel = Rs("Tel")
    Mobile = Rs("Mobile")
   
    IsHidden = Rs("IsHidden")
    IsLock = Rs("IsLock")
    IsTj = Rs("IsTj")
    IsGj = Rs("IsGj")
    IsSh = Rs("IsSh")
    LoginQuantity = Rs("LoginQuantity")
    ThisLoginDate = Rs("ThisLoginDate")
    ThisLoginIp = Rs("ThisLoginIp")
    ViewQuantity = Rs("ViewQuantity")
    RegFromIp = Rs("RegFromIp")
    RegDate = Rs("RegDate")
End If
Rs.Close
if Conn.Errors.Count>0 then
    Conn.Errors.Clear
    Conn.RollBackTrans
    response.Redirct "Person_Edit.asp"
   End if
rs.open "select * from test where PerId = "& PerId , Conn , 1 , 1
If Rs.Eof Then
    UserName = ""
    PassWord = ""
Else
    UserName = Rs("UserName")
    PassWord = Rs("PassWord")
    End if
    Rs.Close
if Conn.Errors.Count>0 then
   Conn.Errors.Clear
   Conn.RollBackTrans
   response.Redirct "Person_Edit.asp"
End if
   
#8
yms1232011-03-23 22:14
不明白一个查询而已为什么要用事物来表达?为何非得要把简单问题复杂化呢?
#9
ab3827170362011-03-24 08:54
恩有道理,我想问一下在一个页面里可以同时用
<!--#include file="Conn.asp" -->
<!--#include file="Conn1.asp"-->
吗??2个是不同的数据库
#10
jansonwang2011-03-25 15:50
应该只要你的conn和conn1里面定义的数据库对象名要不一样才能区别使用不同的数据库啊。你也可以写到一个文件中去啊。
#11
ab3827170362011-03-26 15:02
2个数据库能嵌套使用吗??有谁试过
Rs1.open "select * from test1",conn1,3,2
 Rs.open "select * from test",conn,3,2
rs.close
rs1.close
#12
ab3827170362011-03-28 10:55
经过尝试以后我发现2个数据库能嵌套的

例如:Rs.open "Select * from test where id=1",conn,1,1
      if Not Rs.Eof Then
      response.write("有记录")
      Esle
       Rs1.Open "Select * from test1 where id=1",conn1,1,1
      if Not Rs1.Eof Then
        response.write("有记录")
      Else
        response.write("没记录")
      End if
     Rs1.close
  End if
Rs.close
至于同一个数据库能不能用conn 和conn1 来实现上面的功能,我就没试过了。
#13
ab3827170362011-03-28 19:37
请教 把2个数组放在另一个数组里 怎么写
A(5)={1,2,3,4,5}
B(2)={6,7}
合并为
C(7)={1,2,3,4,5,6,7,}
#14
hams2011-03-29 08:02
C(1)=A(1)
C(2)=A(2)
C(3)=A(3)
C(4)=A(4)
C(5)=A(5)
C(6)=B(1)
C(7)=B(2)
#15
ab3827170362011-03-29 09:33
asp 语句
#16
hams2011-03-29 10:04
这个不是ASP语句么?
#17
ab3827170362011-03-29 10:38
完整的asp语句 我那个只是举了一个例子而已如果是把A()和B()数组都是从数据库里取得呢,问一个小问题,如何定义2维数组
我写的代码他说我
错误类型:
ADODB.Field (0x800A0BCD)
BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
/全能人才招聘系统asp.0602/a.asp, 第 63 行
Dim MyArry()
rs.open "select * from PersonTbl",Conn,1,1
 if Not Rs.Eof Then
  for i=0 to rs.recordcount
   ReDim Preserve MyArry(rs.recordcount,5)
   MyArry(i,0)=rs("realname")    -----63行
   MyArry(i,1)=rs("sex")
   MyArry(i,2)=rs("Age")
   MyArry(i,3)=rs("Qualification")
   MyArry(i,4)=rs("JobPost")
   response.Write(MyArry(i,0))
   response.Write(MyArry(i,1))
   response.Write(MyArry(i,2))
   response.Write(MyArry(i,3))
   response.Write(MyArry(i,4))
   response.Write("<br>")
   rs.movenext
   next
   End if
   rs.close


[ 本帖最后由 ab382717036 于 2011-3-29 10:41 编辑 ]
#18
ab3827170362011-03-31 15:16
谁能给我一个检查用户是否含有非法字符的完整代码,要求直接复制就能运行的,简单一点,最好页面只有用户名和密码的,含有非法性判断单独一个页面
谢谢
#19
zhanxinlin2011-04-02 00:46
以下是引用yms123在2011-3-23 16:47:25的发言:

查询两个表的信息还可以用多表查询
select * from PersonTbl,test Where PersonTbl.PerId=1 or test.PerId=1

学习了,哈哈
1