社区
C#
帖子详情
请问用SELECT ... FOR XML选出的记录,如何添加一个根元素?
idoloveyou
2004-06-21 11:38:33
如果select出来的是多条记录,则整个XML没有跟元素,不能放到XML控件中显示,请问怎么办?
...全文
114
3
打赏
收藏
请问用SELECT ... FOR XML选出的记录,如何添加一个根元素?
如果select出来的是多条记录,则整个XML没有跟元素,不能放到XML控件中显示,请问怎么办?
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Chimeny
2004-07-09
打赏
举报
回复
Mark
zljblue
2004-06-21
打赏
举报
回复
楼上的厉害
jiezhi
2004-06-21
打赏
举报
回复
sql语句都是 for xml ...的形式
方法1:
public string GetXmlStr(string Sql)
{
try
{
XmlTextReader reader = ExeXmlReader(Sql);
StringBuilder xml = new StringBuilder();
xml.Append(reader.GetRemainder().ReadToEnd());
reader.Close();
return "<Data>"+xml.ToString()+"</Data>";
}
catch(Exception ee)
{
return ee.Message;
}
}
方法2:
public string GetXMLStr(string Sql)
{
try
{
SqlDataReader objDataReader = ExeReader(Sql);
StringBuilder xml = new StringBuilder(8192);
// 不断从数据阅读器中获取XML数据并添加到StringBuilder对象中
while (objDataReader.Read())
{
if (!objDataReader.IsDBNull(0))
xml.Append(objDataReader.GetString(0));
}
objDataReader.Close();
string strOutXML = "<Data>"+xml.ToString()+"</Data>";
return strOutXML;
}
catch(System.Exception e1)
{
return e1.Message;
}
}
方法3:sql语句不是for xml格式的,而是普通的查询
public virtual string GetXml(string strSql,string NodeName)
{
try
{
DataSet myDataSet=new DataSet();
using(DataAccess myDA = new DataAccess())
{
myDataSet = myDA.ExeDataSet(strSql);
myDataSet.DataSetName = "Data";
myDataSet.Tables[0].TableName = NodeName;
return myDataSet.GetXml ().ToString ();
}
}
catch(System.Exception e1)
{
strErrorDesc = e1.Message ;
return "<ErrorDescription>"+strErrorDesc+"</ErrorDescription>";
}
}
公共方法:
ExeDataSet--执行sql返回一个DateSet
ExeReader --执行sql返回一个SqlDataReader
public SqlDataReader ExeReader(string Sql)
{
try
{
SqlCommand Cmd = new SqlCommand(Sql,sqlConn);
return Cmd.ExecuteReader();
}
catch(Exception ee)
{
throw ee;
}
}
public DataSet ExeDataSet(string Sql)
{
try
{
DataSet myDataSet = new DataSet();
SqlDataAdapter dataAdapter = new SqlDataAdapter(Sql,sqlConn);
SqlCommandBuilder myCmdBu = new SqlCommandBuilder(dataAdapter);
dataAdapter.Fill(myDataSet);
return myDataSet;
}
catch(Exception ee)
{
throw ee;
}
}
EFCore与EF6:ORM技术深度解析
ORM(对象关系映射)技术通过将数据库表映射为程序对象,简化了数据库操作。EF Core和EF6是.NET平台下的ORM框架,支持LINQ查询、数据迁移等功能。EF Core是跨平台的新版本,而EF6仅支持.NET Framework。使用ORM时可通过代码优先或数据库优先方式创建模型,并利用数据注解配置映射关系。核心功能包括DbContext管理数据库连接、Linq查询、增删改操作及数据库迁移。开发时需通过NuGet安装相应包,在程序包管理器控制台执行迁移命令,实现模型与数据库的同步。该技术显著提升了开发
红队必备工具集:Awesome-Red-Teaming中的10个强力渗透测试神器
在网络安全领域,红队演练和渗透测试需要依赖专业工具来模拟真实攻击场景。Awesome-Red-Teaming项目作为红队资源的综合清单,收录了大量实用工具。本文将从该项目中精选10款渗透测试神器,帮助安全从业者提升红队作战能力,覆盖权限提升、凭证窃取、横向移动等核心场景。 ## 1. Mimikatz:Windows凭证窃取之王 **核心功能**:从内存中提取Windows凭证(哈希、明文密码
(课程设计)基于springboot演唱会票务预订系统设计与实现-计算机毕设 附源码 57908
随着演唱会市场的不断升温,观众对于便捷、高效的票务预订服务的需求日益增长。传统票务服务模式存在诸多问题,如购票流程复杂、信息更新不及时、缺乏个性化体验等。为解决这些问题,本研究开发了一款演唱会票务预订系统,采用前端 Vue、后端 Spring Boot 技术栈,依托 MySQL 数据库搭建。注册用户可以在首页浏览演唱会资讯、查看网站公告,了解演唱会信息,并在商城管理中操作我的购物车、我的订单、我的地址和我的优惠券等。用户还可以进行演唱会选座,并在个人中心查看个人首页、选座信息、用户评价、订单配送以及收藏等信
谁说 C# 做不了信创?3 大国产 OS + 4 种 CPU 架构适配全纪录
指标统信 UOS + 达梦 DM8银河麒麟 + 人大金仓应用启动时间2.1s3.8s3.2s内存占用(空闲)180MB95MB102MB100 并发 QPS3,2002,8002,950P99 延迟45ms68ms55msCPU 占用(稳态)15%22%18%关键发现:内存占用:Linux 上反而比 Windows 低!因为 .NET Runtime 在 Linux 上的内存管理更紧凑,没有 Windows 上那些 COM/Win32 的开销QPS 差距。
大型CAx(CAD/CAE/CAPP/CAM)工业软件开发中的关键组件
通过对FreeCAD、SALOME等多款代码的分析研究,发现这些软件在架构设计、模块实现等方面,存在许多相似(同)的技术思想。因此,有必要对这些共性、主流的技术予以总结分析。
C#
111,128
社区成员
642,536
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章