就是输入一个数据,然后和数据库中的标准数据比较的得出结果输出
数据处理就是输入的数据和标准的数据比较大小
在标准的数据大小不同的范围内(比如说:标准数据的-10%——+10%中就输出结果为正常,其他范围中输出结果为有问题)就会有不同的输出结果
怎么用vb 做啊,能不能给我一段代码让我学习一下!
我对数据库还不是很懂!!
谢谢!!

解决方案 »

  1.   

    text1.text中输入数据
    text2.text中为输出的结果
     dim txtsql as string
     dim rs as adodb.recordset
     dim msgtext as string
     
     txtsql ="select 字段 from 表 where 限定条件 "
     set rs =executesql(txtsql,msgtext)
     if rs.eof=false then
      for i=1 to rs.recordcount
         if  text1.text>rs.fields(0) * 0.1 then
             text2.text=text1.text '注:此处要看你取的记录是几条,如果是一条,这样就可以,如果多条那就要另想办法解决了(此循环是多条记录的情况,所以还不完善,剩下的楼主自己解决吧
         elseif 条件  then
          --------
         -----------
         else
          --------
         end if
        rs.movenext
      next i
    else
     msgbox "没有记录,vbokonly,"警告"
    end if
     rs.close
     
       
             
      

  2.   

    Public Function ConnectString() _
       As String
    'returns a DB ConnectString
      ConnectString = "Provider=SQLOLEDB.1;Password=密码;Persist Security Info=False;User ID=sa;Initial Catalog=数据库名字;Data Source=IP或服务器名字"End Function
    Public Function ExecuteSQL(ByVal SQL _
       As String, MsgString As String) _
       As ADODB.Recordset
    'executes SQL and returns Recordset
       Dim cnn As ADODB.Connection
       Dim rst As ADODB.Recordset
       Dim sTokens() As String
       On Error GoTo ExecuteSQL_Error
       sTokens = Split(SQL)
       Set cnn = New ADODB.Connection
       cnn.Open ConnectString
       If InStr("INSERT,DELETE,UPDATE", _
          UCase$(sTokens(0))) Then
          cnn.Execute SQL
          MsgString = sTokens(0) & _
             " query successful"
       Else
          Set rst = New ADODB.Recordset
          rst.Open Trim$(SQL), cnn, _
             adOpenKeyset, _
             adLockOptimistic
          'rst.MoveLast     'get RecordCount
          Set ExecuteSQL = rst
          MsgString = "查询到" & rst.RecordCount & _
             " 条记录 "
       End If
    ExecuteSQL_Exit:
       Set rst = Nothing
       Set cnn = Nothing
       Exit Function
    ExecuteSQL_Error:
       MsgString = "查询错误: " & _
          Err.Description
       Resume ExecuteSQL_Exit
    End Function
      

  3.   

    Option Explicit
    Private conn As ADODB.Connection
    Private rs As ADODB.RecordsetPrivate Sub Command1_Click()
    '数据库中设定标准值s1(最小值),s2(最大值),这些数据事先录入完成
    Set rs = New ADODB.Recordset
    rs.Open "select * from mz where s1<'" & CDbl(Text1.Text) & "' and s2>'" & CDbl(Text1.Text) & "'", conn, 1, 3
    If Not rs.EOF Then
    MsgBox "此数据符合标准"
    Else
    MsgBox "非标准数据"
    End If
    End SubPrivate Sub Form_Load()
    Dim apppath As String
    Dim DbFileName As String
    Dim ConnectString As String
    Dim i As Integer
    Set conn = New ADODB.Connection
    Dim sql As String
            Set conn = New ADODB.Connection
            Set rs = New ADODB.Recordset
            rs.CursorLocation = adUseClient
            DbFileName = App.Path & "\article.mdb"
            ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
                       DbFileName & ";Persist Security Info=False;"
                    
            On Error Resume Next
            With conn
                 .CursorLocation = adUseClient
                 .Open ConnectString
            End With
    End Sub
      

  4.   

    如果是ms sql,可以参照:
    CASE 函数用于计算多个条件并为每个条件返回单个值。CASE 函数通常的用途是使用可读性更强的值替换代码或缩写。下面的查询使用 CASE 函数重命名书籍的分类,以使之更易理解。USE pubs
    SELECT
       CASE type
          WHEN 'popular_comp' THEN 'Popular Computing'
          WHEN 'mod_cook' THEN 'Modern Cooking'
          WHEN 'business' THEN 'Business'
          WHEN 'psychology' THEN 'Psychology'
          WHEN 'trad_cook' THEN 'Traditional Cooking'
          ELSE 'Not yet categorized'
       END AS Category, 
    CONVERT(varchar(30), title) AS "Shortened Title", 
    price AS Price
    FROM titles
    WHERE price IS NOT NULL
    ORDER BY 1
      

  5.   

    如果是access,可以参考:
    select iif(课程1>90,'大于90','小于等于90') as 成绩 from 学生成绩表