Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7970625
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 4, 20262026-06-04T07:26:08+00:00 2026-06-04T07:26:08+00:00

I have a mysql 5.1, stored procedure that takes TEXT input which is supposed

  • 0

I have a mysql 5.1, stored procedure that takes TEXT input which is supposed to contain an XML.

I could successfully parse XML and do everything needed. Now that I am working on error handling part, I need to know how to make sure that the input XML is well formed and valid ?

Thanks

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-04T07:26:10+00:00Added an answer on June 4, 2026 at 7:26 am

    I don’t know of anything in MySQL’s XML support that says “this is well formed XML” but you can fake it. MySQL has an ExtractValue function:

    ExtractValue() takes two string arguments, a fragment of XML markup xml_frag and an XPath expression xpath_expr (also known as a locator); it returns the text (CDATA) of the first text node which is a child of the element(s) matched by the XPath expression.

    But you can also use this to check the XML since:

    If no matching text node is found for the expression (including the implicit /text())—for whatever reason, as long as xpath_expr is valid, and xml_frag consists of elements which are properly nested and closed—an empty string is returned.
    […]
    NULL is returned if xml_frag contains elements which are not properly nested or closed, and a warning is generated…

    So if you hand ExtractValue any valid XPath expression and any valid piece of XML then you will get a non-NULL result but if you use value XPath and invalid XML, you get a NULL back. So all you need to do is build an INSERT and UPDATE triggers that use ExtractValue to check the XML and signal to raise an exception if you get a NULL:

    select ExtractValue(new.your_xml_column, '/*') into @xml_check;
    if @xml_check is null then
        signal sqlstate '45000';
    end if;
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a MYSQL stored procedure SP1() that returns a result set. I want
I'm very new to MySQL and I have a stored procedure that I'd like
I have a mysql stored procedure which is giving me the following error:- #1064
I have a java program that is calling a MySQL stored procedure that is
I have a MySQL stored procedure that uses a temporary table. Assume that my
Well I have this MySQL stored procedure that I wrote and if I run
Mysql Version 14.14 Distrib 5.1.41 I have a stored procedure that I am trying
I'm (attempting) to write a MySQL stored procedure that parses a large text file.
Environment: MySQL 5.1, Linux I have a stored procedure that computes several values from
I have a stored procedure in MySql that inserts 10.000 registers. When I execute

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.