首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

编程新人现下dataset里面存了一个100多列的表,想要将这个表存进access数据库中,想了一天试了一天。无奈了,来找大神帮忙。

2013-08-06 
编程新人求助:现下dataset里面存了一个100多列的表,想要将这个表存进access数据库中,想了一天试了一天。无

编程新人求助:现下dataset里面存了一个100多列的表,想要将这个表存进access数据库中,想了一天试了一天。无奈了,来找大神帮忙。求助啊。。。。

 
        Dim dt As DataTable = New DataTable()
        Dim ConStr As String = g_SQLDataSource
        Dim SqlText As String = "select * from basictable"
        Dim conn As OleDb.OleDbConnection = New OleDb.OleDbConnection(ConStr)
        Dim comm As OleDb.OleDbCommand = New OleDb.OleDbCommand(SqlText, conn)
        Dim da As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter(comm)
        Dim myDataset As DataSet = New DataSet()
        da.Fill(myDataset)

用这段代码将表写进数据库。
接下来

        myDataset.Tables(0).Columns.Add("结果")
        Dim i, j As New Integer
        i = myDataset.Tables(0).Rows.Count - 1
        j = 0
        For i = 0 To i
            Try
                Dim insertstr As String = "insert into basictable values ('" + myDataset.Tables(0).Rows(i).Item(0).ToString + "','" + myDataset.Tables(0).Rows(i).Item(1).ToString + "')"
                Dim cmd As OleDbCommand = New OleDbCommand(insertstr, conn2)
                cmd.ExecuteNonQuery()
                myDataset.Tables(0).Rows(i).Item("结果") = "OK"
                j = j + 1
            Catch ex As Exception
                myDataset.Tables(0).Rows(i).Item("结果") = ex.Message.ToString
                'MsgBox(ex.Message.ToString)


            End Try
        Next
        MsgBox("成功导入" & j & "条记录")
        conn.Close()



应该怎么写啊,想要把dataset中村的表,添加到另一个access数据库中。。 vb.net dataset access
[解决办法]
Dim conn As OleDb.OleDbConnection = New OleDb.OleDbConnection(ConStr)
修改ConStr里面连接到另一个access,
然后循环dataset组装insert into 插入和你上面的程序不差不多吗
[解决办法]
首先你的在Access数据库建立一个对应的表,再把数据导入到表中
[解决办法]
引用:
首先你的在Access数据库建立一个对应的表,再把数据导入到表中

137列这么多,其实你可以先把数据导入到CSV文件,再把bulk insert插入到数据库
下面这是SqlServer的

private static bool csvToSql(string fileName)
        {
            string StrConn = "server=.;database='" + DataBaseName + "';uid='" + userName + "';pwd='" + Password + "'";

            SqlConnection connection = new SqlConnection(StrConn);

            try
            {
                connection.Open();

                string cmdtxt = @"bulk insert " + TableName + " from '" + FilePath + fileName + "' with(FIRE_TRIGGERS,FIELDTERMINATOR=',')";

                SqlCommand cmd = new SqlCommand(cmdtxt, connection);



                cmd.ExecuteNonQuery();

                return true;
            }
            catch (System.Exception ex)
            {
               // log.WriteLine("文件:{0}  error:{1}", fileName, ex.Message);
               // log.Flush();
                return false;
            }

        }



[解决办法]
找个工具导出成excel,再导入到access中,不要费劲写代码了

热点排行