SQl XmlºÍC# XmlÊý¾ÝµÄÒ»µã²Ù×÷×ܽá
SQl XmlºÍC# XmlÊý¾ÝµÄÒ»µã²Ù×÷×ܽá
ÔÚ´ËÉêÃ÷XmlÊÇInfoSetÊý¾Ý²»ÊÇ×Ö·û´®£¬ËùÒÔÔÚ´ËÇ¿ÁÒ·´¶ÔÓÃstringÆ´½Óxml¡£Êý¾Ý¿â¿ÉÒÔ´æ·ÅxmlÀàÐÍÊý¾Ý£¬ÄÇô¸ÃÊý¾ÝµÄ¾ßÌå²Ù×÷ÓÖÈçºÎÁË¡£
1.Ê×ÏȽ¨Á¢Ò»Õź¬ÓÐxmlÊý¾ÝÀàÐ͵ıí
CREATE TABLE [dbo].[TestXml](
[ID] [bigint] IDENTITY(1,1) NOT NULL,
[Message] [xml] NULL,
CONSTRAINT [PK_TestXml] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
2.´´½¨ÏàÓ¦µÄDataSet
×¢ÒâĬÈÏMessageÊÇStringÀàÐÍ£¬Îª´ËÎÒÃÇÒª°ÑËü¸ÄΪXDocument»òÔòXmlDocument£¬È磺
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
public XDocument Message {
get {
try {
string xmlstr= ((string)(this[this.tableTestXml.MessageColumn]));
return XDocument.Parse(xmlstr);
}
catch (global::System.InvalidCastException e) {
throw new global::System.Data.StrongTypingException("±í“TestXml”ÖÐÁГMessage”µÄֵΪ DBNull¡£", e);
}
Ïà¹ØÎĵµ£º
asaxÎļþ£º
¡¡¡¡<%@ Control Language="c#" AutoEventWireup="false" Codebehind="counter.ascx.cs" Inherits="JiAnWeb.counter" TargetSchema="http://schemas.microsoft.com/intellisense/ie5"%>
¡¡¡¡<LINK href="css.css" rel="stylesheet">
¡¡¡¡<FONT face="ËÎÌå">
¡¡¡¡<TABLE id="table_coun ......
Case¾ßÓÐÁ½ÖÖ¸ñʽ¡£¼òµ¥Caseº¯ÊýºÍCaseËÑË÷º¯Êý¡£
--¼òµ¥Caseº¯Êý
CASE sex
WHEN '1' THEN 'ÄÐ'
WHEN '2' THEN 'Å®'
ELSE 'ÆäËû' END
--CaseËÑË÷º¯Êý
CASE WHEN sex = '1' THEN 'ÄÐ'
  ......
Ò»£®WITH ASµÄº¬Òå
WITH AS¶ÌÓҲ½Ð×ö×Ó²éѯ²¿·Ö£¨subquery factoring£©£¬¿ÉÒÔÈÃÄã×öºÜ¶àÊÂÇ飬¶¨ÒåÒ»¸öSQLƬ¶Ï£¬¸ÃSQLƬ¶Ï»á±»Õû¸öSQLÓï¾äËùÓõ½¡£ÓеÄʱºò£¬ÊÇΪÁËÈÃSQLÓï¾äµÄ¿É¶ÁÐÔ¸ü¸ßЩ£¬Ò²ÓпÉÄÜÊÇÔÚUNION ALLµÄ²»Í¬²¿·Ö£¬×÷ΪÌṩÊý¾ÝµÄ²¿·Ö¡£
ÌØ±ð¶ÔÓÚUNION ALL±È½ÏÓÐÓá£ÒòΪUNION ALLµÄÿ¸ö²¿·Ö¿ÉÄÜÏàͬ£¬µ ......
Êý¾Ý¿â±íÉè¼ÆÊ±Èç¹ûÉèÖÿÉÒÔΪnull,ÔòËü¾Í²»»á±äΪ'1900-1-01'
Èç¹ûÉè¼ÆÊ±²»¿ÉÒÔΪnull,Ëü¾Í»áĬÈÏΪ: '1900-01-01'
CREATE proc UP_Rsk_AddModel @ygcode varchar(6), @name varchar(8), @xb varchar(2), @bm varchar(32), @jg varchar(16), @mz varchar(16) ......
select sql_text, spid, v$session.program, process
from v$sqltext, v$session, v$process
where v$sqltext.address = v$session.sql_address
and v$sqltext.hash_value = v$session.sql_hash_value
and v$session.paddr = v$process.addr
and v$process.spid in (4335);
×¢Ò ......