Skip to main content

Read XML Data in Sql Server

Solution :-


SELECT CAST(colx.query('data(RegisterationNumber)')  AS VARCHAR(50)) AS registerationnumber,
CAST(colx.query('data(SerialNo)') AS VARCHAR(50)) AS SerialNo,
CAST(colx.query('data(ScratchKey)') AS VARCHAR(50)) AS ScratchKey ,
                                    CAST(colx.query('data(ModOfPayment)') AS VARCHAR(50)) AS ModOfPayment ,
                                    CAST(colx.query('data(ContactNumber)') AS VARCHAR(50)) AS ContactNumber ,
                                    CAST(colx.query('data(IsAvailingLaundry)') AS VARCHAR(50)) AS IsAvailingLaundry ,
CAST(colx.query('data(IsAvailingFood)') AS VARCHAR(50)) AS IsAvailingFood ,
                                    CAST(colx.query('data(FoodType)') AS VARCHAR(50)) AS FoodType ,
CAST(colx.query('data(BookingDateTime)') AS VARCHAR(50)) AS BookingDateTime
INTO #tmp
FROM @XMLDATA.nodes('DocumentElement/mytable') AS Tabx (colx)


In aspx.cs Page (Example)


DataTable dtRecords = new DataTable();
            dtRecords.TableName = "mytable";
            dtRecords.Columns.Add(new DataColumn("RegisterationNumber"));
            dtRecords.Columns.Add(new DataColumn("SerialNo"));
            dtRecords.Columns.Add(new DataColumn("ScratchKey"));
            dtRecords.Columns.Add(new DataColumn("ModOfPayment"));
            dtRecords.Columns.Add(new DataColumn("ContactNumber"));
            dtRecords.Columns.Add(new DataColumn("IsAvailingLaundry"));
            dtRecords.Columns.Add(new DataColumn("IsAvailingFood"));
            dtRecords.Columns.Add(new DataColumn("FoodType"));
            dtRecords.Columns.Add(new DataColumn("BookingDateTime"));

            foreach (GridViewRow r in grdusers.Rows)
            {
                DataRow dr = dtRecords.NewRow();
                
                dr["RegisterationNumber"] = (r.FindControl("txtregistrationnumber") as TextBox).Text;
                dr["SerialNo"] = (r.FindControl("txtserialno") as TextBox).Text;
                dr["ScratchKey"] = (r.FindControl("txtscratchkey") as TextBox).Text;
                dr["ModOfPayment"] = ((r.FindControl("rblmodeofpayment") as RadioButtonList).SelectedIndex);  
                dr["ContactNumber"] = (r.FindControl("txtcontactno") as TextBox).Text;
                dr["IsAvailingLaundry"] = (r.FindControl("chklaundry") as CheckBox).Checked;
                if (((r.FindControl("rblfoodoption") as RadioButtonList).SelectedIndex == 0) || ((r.FindControl("rblfoodoption") as RadioButtonList).SelectedIndex == 1))
                {
                    dr["IsAvailingFood"] = "1";
                }
                else
                {
                    dr["IsAvailingFood"] = "0";
                }
                if (((r.FindControl("rblfoodoption") as RadioButtonList).SelectedIndex == 0) || ((r.FindControl("rblfoodoption") as RadioButtonList).SelectedIndex == 2))
                {
                    dr["FoodType"] = "1";
                }
                else
                {
                    dr["FoodType"] = "2";
                }
                
                dr["BookingDateTime"] = DateTime.Now;                 
                dtRecords.Rows.Add(dr);
            }
            string result;
            using (StringWriter sw = new StringWriter())
            {
                dtRecords.WriteXml(sw);
                result = sw.ToString();
            }
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = con;
            if (con.State == ConnectionState.Closed)
                con.Open();
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.CommandText = "[pHostelBookingInGroup]";
            cmd.Parameters.Add("@mytable", DbType.Xml).Value = result;
            cmd.ExecuteNonQuery();

Comments

Popular posts from this blog

show image in asp.net form from database

In order to show image from database to webform first add an image control in webpage.   <asp:Image ID="imgStudentImage" runat="server" Height="157px" Width="160px" /> Then add new webform to read image from database for example displayimage.aspx and in code behind model write the following code. public string str = //your string     public SqlConnection conn;     public SqlCommand sql = new SqlCommand();     public SqlDataReader dr;     public string strSQL;     protected void Page_Load(object sender, EventArgs e)     {         conn = new SqlConnection(str);         conn.Open();         long id = Convert.ToInt64(Request.QueryString["mId"]);         strSQL = "";         strSQL = strSQL + " SELECT snap from S...

Export Doc,Access,Image,CSV,Excel,Pdf,XML,HTML,Text,Print of Gridview in Asp.net

First import itextsharp.dll in the solution and use three namespces (basically for pdf) using iTextSharp.text; using iTextSharp.text.pdf; using iTextSharp.text.html.simpleparser;          Then Use the following code :- on each button  click  protected void Page_Load(object sender, EventArgs e)         {             if (!Page.IsPostBack)             {                 BindGridDetails(GridView1);             }         }                 protected DataTable BindGridDetails(GridView GridView1)         {   ...

Advent of code 2022 day 22 part 1

  function main(input, input1) {     let grid = input.split( '\n' );     grid.shift();     // only in big input     for ( let i = 0 ; i < 100 ; i++) {         grid[i] = '                                                  ' + grid[i];     }     //console.log(grid[100])     grid = grid.map(x => x.split( '' ))     // find first left top allowed     let temppos = - 1 ;     grid[ 0 ].forEach((element, i) => {         if (temppos == - 1 && element == '.' ) {             temppos = i;         }     });     let initpos = new pos(temppos, 0 )     // console.log(initpos)     // make grid equal shape     let...