返回首页

早安朋友

如何在Oracle数据库中使用C#ASP.NET
NBSP批量插入
thankingnbsp;
苏希尔Dharmar

回答

评论会员:Tejas_Vaishnav 时间:2012/02/06
SqlCommand cmd = new SqlCommand();

SqlConnection cs = new SqlConnection("YOUR CONNECTION STRING");

List<string> a = new List<string>(); 

protected void insert()

{

    cs.Open();

    for (int i = 0; i < a.Count; i++)

    {

        cmd.Connection = cs;

        cmd.CommandType = CommandType.Text;

        cmd.CommandText = "INSERT INTO TABLENAME(NAME,PHONE) VALUES(@NAME,@PHONE)";

        cmd.Parameters.AddWithValue("@NAME", a[i]);

        cmd.Parameters.AddWithValue("@PHONE", a[i]);

        cmd.ExecuteNonQuery();

    }

    cs.Close();

}</string></string>
这是唯一的例子..
""是列表的类型,但有您的大量数据从DataTable或数组或其他任何事情,您需要从instert数据
评论会员:。kishorekke 时间:2012/02/06
下面的代码是有用的导入到数据库Excel中使用BULK INSERT

public static DataTable GetDataTableFromExcel(string SourceFilePath)

    {

        try

        {

            DataTable dtNew = new DataTable();

            DataSet ds = new DataSet();

            string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +

                                                                "Data Source=" + SourceFilePath + ";" +

                                                                "Extended Properties=Excel 8.0;";

 



            using (OleDbConnection cn = new OleDbConnection(ConnectionString))

            {

                cn.Open();

 

                DataTable dbSchema = cn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);

                if (dbSchema == null || dbSchema.Rows.Count < 1)

                {

                    throw new Exception("Error: Could not determine the name of the first worksheet.");

                }

                for (int i = 0; i < dbSchema.Rows.Count; i = i + 2)

                {

                    string WorkSheetName = dbSchema.Rows[i]["TABLE_NAME"].ToString();

 

                    OleDbDataAdapter da = new OleDbDataAdapter("SELECT * FROM [" + WorkSheetName + "]", cn);

                    DataTable dt = new DataTable(WorkSheetName);

                    da.Fill(dt);

                    da.Fill(ds);

                }

                dtNew = ds.Tables[0];

                return dtNew;

            }

        }

        catch (Exception ex)

        {           

            throw new Exception(ex.Message.ToString());

        }

    }

 



 



 



protected void btnImport_Click(object sender, EventArgs e)

    {

        OdbcConnection connection;

        SqlBulkCopy bulkCopy;

            fn1 = System.IO.Path.GetFileName(fyle.PostedFile.FileName);

            if ((fyle.PostedFile != null) && (fyle.PostedFile.ContentLength > 0))

            {

                string fn = System.IO.Path.GetFileName(fyle.PostedFile.FileName);

                string[] ext = fn.Split(new char[] { '.' });

                int count = ext.Length;

                if (ext[count-1].ToString() == "xls")

                {

                    fn2 = ext[0].ToString().Trim() + "-" + String.Format("{0:ddMMyyyyHHmmss}", DateTime.Now) + "." + ext[count-1].ToString().Trim();

                    fn1 = System.IO.Path.GetFileName(fyle.PostedFile.FileName);

                    string SaveLocation = Server.MapPath("EmpWorkFromIChart") + "\\" + fn2;

                    path = SaveLocation;

                    fyle.PostedFile.SaveAs(SaveLocation);

                    DataTable dt = GetDataTableFromExcel(path);

                            using (SqlConnection con =new SqlConnection(ConfigurationSettings.AppSettings.Get("GisHRoneconn")))

                            {

                                con.Open();

                                using (SqlBulkCopy copy = new SqlBulkCopy(con))

                                {

                                    copy.ColumnMappings.Add(0, 0);

                                    copy.ColumnMappings.Add(1, 1);

                                    copy.ColumnMappings.Add(2, 2);

                                    copy.ColumnMappings.Add(3, 3);

                                    copy.ColumnMappings.Add(4, 4);

                                    copy.ColumnMappings.Add(5, 5);

                                    copy.ColumnMappings.Add(6, 6);

                                    copy.ColumnMappings.Add(7, 7);

                                    copy.ColumnMappings.Add(8, 8);

                                    copy.ColumnMappings.Add(9, 9);

                                    copy.ColumnMappings.Add(10, 10);

                                    copy.ColumnMappings.Add(11, 11);

                                    copy.ColumnMappings.Add(12, 12);

                                    copy.ColumnMappings.Add(13, 13);

                                    copy.ColumnMappings.Add(14, 14);

                                    copy.ColumnMappings.Add(15, 15);

                                    copy.ColumnMappings.Add(16, 16);

                                    copy.ColumnMappings.Add(17, 17);

                                    copy.ColumnMappings.Add(18, 18);

                                    copy.DestinationTableName = "<table name="">";

                                    copy.WriteToServer(dt);

                                }

                            }

                       }

              }

}</table>
评论会员:游客 时间:2012/02/06
|乌代・辛格:您可以使用会话如果文本中包含一些机密数据否则,你可以在查询字符串发送。使用会话codeprelang="c#"session[spanclass="code-string""/spanspanclass="code-string"lbl"/span]=label1.text;/pre/code在第二页的检索{体C3}使用查询字符串{的C4}你可以检索如下{C5的}