将Access数据库中数据导入到SQL Server中的详细方法实例


Default.aspx

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AccessToSQL.aspx.cs" Inherits="AccessToSQL" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>无标题页</title>
    <style type="text/css">

        .style1
        {
            height: 16px;
        }
        .style3
        {
            height: 23px;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    </div>
    <table align="center" border="1" bordercolor="honeydew" cellpadding="0"
        cellspacing="0">
        <tr>
            <td colspan="2"
                style="FONT-SIZE: 9pt; COLOR: #ffffff; HEIGHT: 16px; BACKGROUND-COLOR: #ff9933; TEXT-ALIGN: center">
                将Access数据库中数据写入SQL Server数据库中</td>
        </tr>
        <tr>
            <td style="BACKGROUND-COLOR: #ffffcc; TEXT-ALIGN: center">
                <asp:GridView ID="GridView2" runat="server" CellPadding="4" ForeColor="#333333"
                    GridLines="None" style="font-size: small" Width="331px">
                    <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
                    <RowStyle BackColor="#FFFBD6" ForeColor="#333333" />
                    <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" />
                    <SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" />
                    <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
                    <AlternatingRowStyle BackColor="White" />
                </asp:GridView>
            </td>
            <td style="WIDTH: 190px; BACKGROUND-COLOR: #ffffcc; TEXT-ALIGN: center">
                <asp:GridView ID="GridView1" runat="server" CellPadding="4" Font-Size="9pt"
                    ForeColor="#333333" GridLines="None" Width="228px">
                    <FooterStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
                    <RowStyle BackColor="#FFFBD6" ForeColor="#333333" />
                    <SelectedRowStyle BackColor="#FFCC66" Font-Bold="True" ForeColor="Navy" />
                    <PagerStyle BackColor="#FFCC66" ForeColor="#333333" HorizontalAlign="Center" />
                    <HeaderStyle BackColor="#990000" Font-Bold="True" ForeColor="White" />
                    <AlternatingRowStyle BackColor="White" />
                </asp:GridView>
            </td>
        </tr>
        <tr>
            <td style="HEIGHT: 23px; BACKGROUND-COLOR: #ff9900; TEXT-ALIGN: center"
                valign="top">
                <asp:Button ID="Button3" runat="server" Font-Size="9pt" onclick="Button1_Click"
                    Text="Access数据写入SQL数据库中" />
    <asp:Label ID="Label1" runat="server" Text="Label" Visible="False"
                    style="font-size: x-small"></asp:Label>
            </td>
            <td style="WIDTH: 190px; HEIGHT: 23px; BACKGROUND-COLOR: #ff9900; TEXT-ALIGN: center">
                <asp:Button ID="Button2" runat="server" Font-Size="9pt" onclick="Button2_Click"
                    Text="SQL数据库中显示导入的数据" />
            </td>
        </tr>
        </table>
    </form>
</body>
</html>


Default.aspx.cs

复制代码 代码如下:

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.OleDb;
using System.Data.SqlClient;

public partial class AccessToSQL : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            AccessLoadData();
        }
    }
    public OleDbConnection CreateCon()
    {
        string strconn = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" + Server.MapPath("UserScore.mdb") + ";User Id=admin;Password=;";
        OleDbConnection odbc = new OleDbConnection(strconn);
        return odbc;
    }
    public SqlConnection CreateSQLCon()
    {
        string sqlcon = ConfigurationSettings.AppSettings["strCon"];
        SqlConnection mycon = new SqlConnection(sqlcon);
        return mycon;
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        string sql = "";
        OleDbConnection con = CreateCon();//创建数据库连接
        con.Open();
        DataSet ds = new DataSet(); //创建数据集
        sql = "select * from Score";
        OleDbDataAdapter myCommand = new OleDbDataAdapter(sql,con);//创建数据适配器
        myCommand.Fill(ds, "Score");
        myCommand.Dispose();
        DataTable DT = ds.Tables["Score"];
        con.Close();
        myCommand.Dispose();
        for (int j = 0; j < DT.Rows.Count; j++)//循环ACCESS中数据获取相应信息
        {
            string sqlstr = "";
            string ID = DT.Rows[j][0].ToString();
            string UserName = DT.Rows[j][1].ToString();
            string PaperName = DT.Rows[j][2].ToString();
            string UserScore = DT.Rows[j][3].ToString();
            string ExamTime = DT.Rows[j][4].ToString();
            string selsql = "select count(*) from AccessToSQL where 用户姓名='" + UserName + "'";
            if (ExScalar(selsql) > 0)//判断数据是否已经添加
            {
                Label1.Visible = true;
                Label1.Text = "<script language=javascript>alert('该Access数据库中数据已经导入SQL数据库中!');location='AccessToSQL.aspx';</script>";
            }
            else
            {
                string AccessPath = Server.MapPath("UserScore.mdb");//获取ACCESS数据库路径
                //应用OPENROWSET函数访问 OLE DB 数据源中的远程数据所需的全部连接信息
                sqlstr = "insert into AccessToSQL(ID,用户姓名,试卷,成绩,考试时间)Values('" + ID + "','" + UserName + "','" + PaperName + "','" + UserScore + "','" + ExamTime + "')";
                sqlstr += "select * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','" + AccessPath + "';'admin';'',Score)";
                SqlConnection conn = CreateSQLCon();
                conn.Open();
                SqlCommand mycom = new SqlCommand(sqlstr, conn);
                mycom.ExecuteNonQuery();//执行添加操作
                if (j == DT.Rows.Count - 1)
                {
                    Label1.Visible = true;
                    Label1.Text = "<script language=javascript>alert('数据导入成功.');location='AccessToSQL.aspx';</script>";
                }
                else
                {
                    Label1.Visible = true;
                    Label1.Text = "<script language=javascript>alert('数据导入失败.');location='AccessToSQL.aspx';</script>";
                }
                conn.Close();
            }
        }

    }
    public void AccessLoadData()
    {
        OleDbConnection myConn = CreateCon();
        myConn.Open();   //打开数据链接,得到一个数据集    
        DataSet myDataSet = new DataSet();   //创建DataSet对象    
        string StrSql = "select   *   from  Score";
        OleDbDataAdapter myCommand = new OleDbDataAdapter(StrSql, myConn);
        myCommand.Fill(myDataSet, "Score");
        GridView2.DataSource = myDataSet;
        GridView2.DataBind();
        myConn.Close();
    }
    public int ExScalar(string sql)
    {
        SqlConnection conn = CreateSQLCon();
        conn.Open();
        SqlCommand com = new SqlCommand(sql, conn);
        return Convert.ToInt32(com.ExecuteScalar());
        conn.Close();
    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        string sqlstr = "select * from AccessToSQL";
        SqlConnection conn = CreateSQLCon();
        conn.Open();
        SqlCommand mycom = new SqlCommand(sqlstr, conn);
        SqlDataReader dr = mycom.ExecuteReader();
        dr.Read();
        if (dr.HasRows)
        {
            GetDataSet(sqlstr);
        }
        else
        {
            Label1.Visible = true;
            Label1.Text = "<script language=javascript>alert('数据库中没有数据信息,请先导入再查询!');location='AccessToSQL.aspx';</script>";
        }
        dr.Close();
        conn.Close();
    }
    public DataSet GetDataSet(string sqlstr)
    {
        SqlConnection conn = CreateSQLCon();
        SqlDataAdapter myda = new SqlDataAdapter(sqlstr, conn);
        DataSet ds = new DataSet();
        myda.Fill(ds);
        GridView1.DataSource = ds;
        GridView1.DataBind();
        return ds;
    }
}



相关阅读:
Android SlidingDrawer 抽屉效果的实现
php中JSON的使用方法
HTML5全屏(Fullscreen)API详细介绍
Javascript中匿名函数的多种调用方式总结
详解Java中用于查找对象哈希码值的hashCode()函数
Gridview使用CheckBox全选与单选采用js实现同时高亮显示选择行
PHP获取当前文件的父目录方法汇总
详解Linux系统中管理文件权限的chown和chmod命令
Java中成员方法与成员变量访问权限详解
什么是UCA功能?关闭Win7系统的UCA功能的方法
Android学习笔记(二)App工程文件分析
微信公众平台之快递查询功能用法实例
mysql常见的错误提示问题处理小结
Win7访问共享文件速度过慢的解决方案(已测试)
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 大众点评网张涛的个人励志经历 月亮会知道 “一模、两翼、三研”工作计划-学校工作计划_学校工作计划 暑假一天三年级作文:暑假里的一天 在全市普通高中课程改革动员大会上的讲话 语文版七年级上学期第七单元复习试卷 阿姨,您辛苦了作文750字 我们小时候的文化生活 我爱语文作文500字 雪飞作文150字 我是一支铅笔 差强人意造句,差强人意的意思是什么,差强人意的读音,差强人意的反义词 小猴当英雄 农业局关于深入学习实践科学发展观活动实施方案 朋友,我们请随时记得坚强! 关于老师的祝福语教师节 小学六年级作文450字:美丽的夕照 可贵的乐观精神 在2010年课改推进总结会暨教学整顿会的讲话 幽默搞笑宣传语 如期而至,不期而遇 雨来读后感 小学五年级作文500字:普陀的日出 我们的“幽默”老师作文600字 几度夕阳红 我的大学读后感500字 宋俊德教授经典语录 三国演义读后感【精选】 如果。天空不死 深入学习实践科学发展观,切实提高窗口服务质量心得体会 包馄饨作文150字 励志小故事大道理:积极面对你的缺陷 我家窗前的变化450字 《在红尘的最深处等你》第五十三章 坚持诚信,赢得信任 秋天的银杏树叶作文 申报助理经济师专业技术职务个人总结 日志生活日记网,青春是一首忧伤的歌,总有唱不完的忧伤…… 我的教书故事 西方的智慧读后感博客3篇 垃圾斯国王覆灭记 2015独立自主的和平外交教学反思 写事作文700字 难忘的十岁成长礼 如果范进没有中举 我的日记,被偷看了作文550字 我喜欢笔袋作文350字 赠别刘员外长卿 为梦想而拆除记忆,这可能吗?(胡芳彬,号求懂先生) 庆祝三八国际妇女节(配乐诗朗诵) 晚安心语:回首,留不住岁月。凝眸,牵不住时光。于是,微笑,释然

Copyright © 2016 phpStudy |