我在vb中用下面的代码实现了从access的表"教室"中找到满足条件的教室名称
  set rs1 = db.openrecordset("select 教室名称 from 教室 where(0<=教室容量-(select 班级人数 from 班级 where 班级名称 = '计991')<30) order by 教室容量")
  我现在想把这些满足条件的教室名称全部填入到表"paike"的字段"教室名称"中.开始时"教室名称"字段里面的内容为空.我试着在select 前面加了insert into paike('教室名称')但是显示错误信息"无效的操作".这个问题困扰了我一整天了,哪位大侠知道帮帮我啊?很急!!另外,我想把paike中"教师名称"和"课程名称"的内容一条条的显示在textbox中,如何实现啊? 

解决方案 »

  1.   

    我现在改成了Public db As Database 'ADO具体格式,设为全局变量
    Public rs1 As Recordset, rs2 As Recordset, rs3 As Recordset, rs4 As Recordset
    Public s As String
    Private Sub Form_Load()
    s = App.Path & "\paike.mdb"
    Set db = OpenDatabase(s)
    Set rs4 = db.OpenRecordset(" select 教室名称 from 教室 where( 0<=教室容量-(select 班级人数 from 班级 where 班级名称 = '计991')<30)")
     Do While Not rs4.EOF
    db.Execute (" insert into paike(教室名称) values(" & rs4("教室名称") & ")")
     rs4.MoveNext
     Loop
    报错是 参数不足 ,而且错误就在
    db.Execute (" insert into paike(教室名称) values(" & rs4("教室名称") & ")")
     这一行.到底改怎么改啊?
      

  2.   

    set rs1 = db.openrecordset(.............)是讓rs1取得記錄集,是不能進行新增,修改和刪除的.
      

  3.   

    我的set rs4=.....是取得记录值啊,错误在后面啊
    该怎么改啊?
      

  4.   

    db.Execute (" insert into paike(教室名称) values('" & rs4("教室名称") & "')")
      

  5.   

    关键是你的SQL有问题。如果你的SQL改好了就没有问题了。
    我象知道你的数据库结构,然后才能给你写SQL啊。
      

  6.   

    数据库里面就是一些表啊
    paike: 教室名称 教师名称 课程名称 班级名称 周学时数 总学时数
    教室 ;教室名称  教室容量
    班级:班级名称  班级人数
    教师:教师姓名,所教科目
    课程:课程名称,总学时数,周学时数
    其中各表中字段名称相同的内容相同.
      

  7.   

    按照syszj() 说的改了之后,加是加进去了,但是是加到后面,不是我想要的加到对应的其他字段的地方.怎么样把他们加到与其他字段对应的地方啊?
      

  8.   

    db.Execute("insert into paike('教室名称')("select 教室名称 from 教室 where(0<=教室容量-(select 班级人数 from 班级 where 班级名称 = '计991')<30) order by 教室容量")")
    这样不行吗?
      

  9.   

    按照syszj() 说的改了之后,加是加进去了,但是是加到后面其他字段内容为空的地方,我是想把他们加到与其他字段对应的有内容的地方
    例如:我想加成这样                         
    教室名称  教师名称  班级名称 课程名称
    C5-222    陈力      计991   数据库
    C12-111   张三      计991   网络
    C5-241    王利      计992   算法
    但是实际上按照syszj()的方法改了之后加成
    教室名称  教师名称  班级名称 课程名称
              陈力      计991   数据库
              张三      计991   网络
               王利      计992   算法
    C5-222  
    C12-111   
    C5-241   
    请问应该怎么写啊? 
      

  10.   

    另外的一个问题是:我想把paike中"教师名称"和"课程名称"的内容一条条的显示在不同的textbox中,如何实现啊? 就是相当于下面的意思:
      

  11.   

    星期\节次  1     2    3    4
      一      11    12    13   14    
      二      21    22    23   24
      三      31    32    33   34
      四      41    42    43   44
      五      51    52    53   54  其中11到54内容均为空
    我想把满足条件的paike中的教师名称 ,课程名称 一起显示在11到54中的某一个地方,实现如果
    教师1,课程1显示在11,那么要让它隔一行,显示在31到34中的任意一个位置都行.其他的同理.而且每行不能有相同的教师名称和课程名称.即每门课要隔一天上一次.
      

  12.   

    樓主,那是修改不是新增.應該改成update paike set 教室名称=(select 教室名称 from 教室 INNER JOIN 班级 ON where ( 0<=教室容量-(select 班级人数 from 班级 
    where 班级名称 = '计991')<30))
      

  13.   

    我改成 Set rs4 = db.OpenRecordset(" select 教室名称 from 教室 where( 0<=教室容量-(select 班级人数 from 班级 where 班级名称 = '计991')<30)")
     While Not rs4.EOF
    db.Execute (" update paike  set 教室名称 = ('" & rs4("教室名称") & "')")
     rs4.MoveNext
     Wend
    之后,paike的教室名称字段显示的内容全部是一个教室C5-111,其他的教室都没有显示?????