程序中读取包含sql的文本(创建数据库用)后执行。ps:
1.不用FileSystemObject读取并解析后再执行.---太麻烦
2.不用osql或isql                        ---出现dosexe窗口,烦
3.29号24点以前结贴,无法解决的话跟贴有分:)

解决方案 »

  1.   

    VB中的SQL语句本来就是字符串,从文本中读取就可用了啊。
      

  2.   

    sql语句在VB中本来就是字符串!
      

  3.   

    读取包含sql语句的文本文件.
    为了创建数据库用的.
      

  4.   

    Private Sub CreateDataBase(cnDataBase as connect,sqlFile As String)
    Dim strSql As String, strTmp As String
            
          Open sqlFile For Input As #1
          strSql = ""
          Do While Not EOF(1)
              Line Input #1, strTmp
              If UCase(strTmp) = "GO" Then
                  cn.Execute strSql
                  strSql = ""
              Else
                  strSql = strSql & strTmp & vbCrLf
              End If
          Loop
          If strSql <> "" Then cnDataBase.Execute strSql
          Close #1
    End Sub
      

  5.   

    为什么不用osql呢,用它更简单,不是吗??比如:vb中
    dim cn as New ADODB.Connection 
    dim sql as string cn.open ".......到服务器的连接"
    sql="master.dbo.xp_cmdshell ' osql -U username -P password -i c:\myquery.sql'"
    cn.execute sql
      

  6.   

    上述CreateDataBase过程,你只要定义一个到服务器的连接(如:cn)即可然后调用: call CreateDataBase(cn,"c:\myquery.sql")
      

  7.   

    多谢了!!!
    第一个和FileSystemObject差不多,原来没想到rst可以一次处理n条insert或update语句。刚刚试了一下居然可以.
    用vb直接调osql会出来个dosexe窗口,用户顺手关掉可就完了.没用过xp_cmdshell  学习学习:).ps:
    7.0支持xp_cmdshell吗?