将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 交通频道 作文范文 中学纪念五四爱国运动活动方案 2016县级人才队伍建设存在的问题与对策 那年我不懂 烟草个人工作总结范文 2015赴蒙自县城市管理考察报告 我的兄弟王小波 临江仙·与客湖上饮归 贝爷荒野求“金” “圈子”就是财富吗? 劳动——收获快乐与喜悦作文1100字 查字典比赛作文500字 寻找羽翼的爱 捣衣篇 老头和老太太的故事作文800字 县文联上半年工作总结 小学六年级作文600字:給姑妈的一封信 “送培上门”听课心得体会 马小跳不是坏孩子——《淘气包马小跳》读后感 林富元:小太保也有大梦想 堵 车 为遇见你,哪怕付出死的代价 小学六年级作文600字:友爱的力量 鸡卵子里儿时记忆美食美不胜收 初中初一作文650字:环境与健康 电话那端的女人 小学二年级作文500字:快乐的元旦 栀子花的夏天 2015XX中行员工个人工作总结 小学四年级作文600字:人性的闪光——观《天下无贼》有感 不到夜深人静,意犹未尽 期待作文 点绛唇(和王元渤舍人见贻) 2015年全县计划生育工作要点(共6篇) 计算机专用教室管理制度 有关机遇的作文 贸易中的环境问题及其对策初探 不是我爱吃醋,也不是我爱怀疑,是因为我喜欢你 博客成为简历亮点 赴上海浦东、苏州、昆山学习考察报告 情雪话江南 苦想没盼头,苦干有奔头 时光飞逝,岁月流转,历尽沧桑又回到起点 银行工作报道 抄写党章心得体会 街道办工作总结及2010年工作要点 也还是会想起你,虽然不再是先前那种锥心刺骨的程度和如影随形的 乡村医生】 一个我佩服的同学作文450字 经典语录:泪流满面 太经典了 qq语录精选

Copyright © 2016 phpStudy |