从access中查出来,然后添加到sqlserve中去不就行了,有什么别的意思?

解决方案 »

  1.   

    同意楼上,可以用事务来批量插入到Sql Server
      

  2.   

    Public Sub ExecTans(ByVal sqlStrList As String())
            Dim conn As OleDb.OleDbConnection = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\UserLog.mdb")
            Dim trans As OleDb.OleDbTransaction = Nothing
            Try
                If (conn.State = ConnectionState.Closed) Then
                    conn.Open()
                End If
                Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand()
                cmd.Connection = conn
                cmd.CommandType = CommandType.Text
                trans = conn.BeginTransaction
                cmd.Transaction = trans
                Dim i As Integer
                For i = 0 To sqlStrList.GetUpperBound(0)
                    cmd.CommandText = sqlStrList(i)
                    cmd.ExecuteNonQuery()
                Next
                trans.Commit()
            Catch ex As OleDb.OleDbException
                trans.Rollback()
                Throw (New Exception(ex.Message))
            Finally
                conn.Close()
            End Try
        End Sub
      

  3.   

    也可以先将Acess中的数据先读出来,保存到datatable
    然后插入到SQL Server
     Public Sub Insert()
            Dim dt As DataTable = New DataTable()
            Dim dr As DataRow
            dt.Columns.Add(New DataColumn("name"))
            Dim j As Integer
            For j = 1 To 10
                dr = dt.NewRow()
                dr(0) = "name" + j.ToString()
                dt.Rows.Add(dr)
            Next
            DataGrid2.DataSource = dt
            DataGrid2.DataBind()
            Dim conn As OleDb.OleDbConnection = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\UserLog.mdb")
            conn.Open()
            Dim myAdapter As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter()
            Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand("Insert into mm (name) values (@name)", conn)
            cmd.Parameters.Add("@name", "name")
            cmd.Parameters.Item("@name").SourceColumn = dt.Columns("name").ColumnName
            myAdapter.InsertCommand = cmd
            myAdapter.Update(dt)
            conn.Close()
        End Sub
      

  4.   

    ?是说程序实现还是手工导入啊?
    程序实现楼上都说了,手工导入就是右键-〉所有任务-〉导入数据-〉选择access数据源-〉后面的不用我说了吧?
    呵呵
      

  5.   

    你把连接字符串写在web.config文件中,就可以灵活调用
      

  6.   

    Dim p As String = "c:\123\123\123\s.mdb"
            Response.Write((p.Substring(p.LastIndexOfAny("\"), p.Length - p.LastIndexOfAny("\"))).Replace("\", ""))
            DropDownList1.Items.Add(New ListItem((p.Substring(p.LastIndexOfAny("\"), p.Length - p.LastIndexOfAny("\"))).Replace("\", ""), "1"))
      

  7.   

    我使用的是以下方法将数据从文本文件中导入到sql数据库中
    BULK INSERT Northwind.dbo.[Order Details]
       FROM 'f:\orders\lineitem.tbl'
       WITH 
          (
             FIELDTERMINATOR = '|',
             ROWTERMINATOR = '|\n'
          )
    bulk insert 的用法可以参考sql联机丛书