新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> Oracle, SQL Server与XML,XML在数据挖掘中的应用, PMML.
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - 高级XML应用『 XML 与 数据库 』 → 在.net中实现XML数据的存储和查询出错,请教! 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 12643 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 在.net中实现XML数据的存储和查询出错,请教! 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     sunmcc 美女呀,离线,快来找我吧!
      
      
      等级:大一(高数修炼中)
      文章:10
      积分:134
      门派:XML.ORG.CN
      注册:2006/4/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给sunmcc发送一个短消息 把sunmcc加入好友 查看sunmcc的个人资料 搜索sunmcc在『 XML 与 数据库 』的所有贴子 引用回复这个贴子 回复这个贴子 查看sunmcc的博客楼主
    发贴心情 在.net中实现XML数据的存储和查询出错,请教!

    我是xml的初学者,正在尝试基于sql2005数据库,在c#中实现xml数据库的写入和查询,写了几个测试程序都出错,请教大家.

       收藏   分享  
    顶(0)
      




    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/28 15:41:00
     
     sunmcc 美女呀,离线,快来找我吧!
      
      
      等级:大一(高数修炼中)
      文章:10
      积分:134
      门派:XML.ORG.CN
      注册:2006/4/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给sunmcc发送一个短消息 把sunmcc加入好友 查看sunmcc的个人资料 搜索sunmcc在『 XML 与 数据库 』的所有贴子 引用回复这个贴子 回复这个贴子 查看sunmcc的博客2
    发贴心情 
    1.数据插入
    表名:metaNodes2   (列 id 数据类型(nchar(10);
                                列 xcol 数据类型(xml);
                                列 metaId 数据类型(nchar(10))
    程序实现:
    string myConnectionString = "Data Source=MCC\\MCC;Initial Catalog=demodb;uid='meng';pwd='meng'";
       SqlConnection myConnection = new SqlConnection(myConnectionString);
       myConnection.Open();    
      
       string myQuery = "INSERT INTO metaNodes2 " +
        " SELECT xCol " +
        " FROM    (SELECT *     " +
        " FROM OPENROWSET (BULK '" + Directory.GetParent(Directory.GetParent(Directory.GetCurrentDirectory().ToString()).ToString()).ToString() + "\\bin\\debug\\plant_catalog.xml', SINGLE_CLOB)  " +
        " AS xCol) AS R(xCol) ";
           
        
       try
       {
        SqlCommand myCommand = new SqlCommand(myQuery, myConnection);
        myCommand.ExecuteNonQuery();
         
        
        MessageBox.Show("Inserted Successfully!", "Information");
       }
       catch (Exception e1)
       {
        MessageBox.Show(e1.ToString());
       }

    这里使用了大容量数据加载,返回错误:出现大容量数据加载转换错误.
    如果我将xml文件换成另外一个文件,就可以成功插入数据库.
    我查找了一些资料,说用xmlTextWriter生成的文件编码类型为:utf-16,而BULK默认识别utf-8,不知道是否是这个原因,
    另外,对该出错的xml文件,我使用.net05的方法,先使用xmlReader读入,再insert同样成功.
    请教明白人指点一下,谢啦

    [此贴子已经被作者于2006-4-28 16:19:36编辑过]
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/28 15:57:00
     
     sunmcc 美女呀,离线,快来找我吧!
      
      
      等级:大一(高数修炼中)
      文章:10
      积分:134
      门派:XML.ORG.CN
      注册:2006/4/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给sunmcc发送一个短消息 把sunmcc加入好友 查看sunmcc的个人资料 搜索sunmcc在『 XML 与 数据库 』的所有贴子 引用回复这个贴子 回复这个贴子 查看sunmcc的博客3
    发贴心情 
    2.数据查询
    程序代码:
    string myConnectionString = "Data Source=MCC\\MCC;Initial Catalog=metaMis;uid='meng';pwd='meng'";
       SqlConnection myConnection = new SqlConnection(myConnectionString);
       myConnection.Open();
       string x2="dfg";
       string myQuery = "SELECT metaId FROM metaNodes2 WHERE xCol.exist ('/VectorMetadata/identificationInfo/citationInfo[author = "+x2+"') = 1";
       //string myQuery="select metaId from metanodes2 where id='3'";
       try
       {
        SqlCommand myCommand = new SqlCommand(myQuery, myConnection);
       

        SqlDataReader myReader= myCommand.ExecuteReader();
        
        while (myReader.Read ())
        {
         textBox1.Text=(myReader.GetString(0));
        }

    在.net05下却报错:set设置不正确,未使用正确的xml索引.

    然而,在sql2005中运行:    
    CREATE PRIMARY XML INDEX idx_xCol on metaNodes2 (xCol)
                          CREATE XML INDEX idx_xCol_Value on metaNodes2 (xCol)
                          USING XML INDEX idx_xCol FOR VALUE

                          SELECT metaId FROM metaNodes2 WHERE xCol.exist     ('/VectorMetadata/identificationInfo/citationInfo[author = "dfg"]') = 1

    查询语句,没有问题.

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/28 16:25:00
     
     sunmcc 美女呀,离线,快来找我吧!
      
      
      等级:大一(高数修炼中)
      文章:10
      积分:134
      门派:XML.ORG.CN
      注册:2006/4/28

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给sunmcc发送一个短消息 把sunmcc加入好友 查看sunmcc的个人资料 搜索sunmcc在『 XML 与 数据库 』的所有贴子 引用回复这个贴子 回复这个贴子 查看sunmcc的博客4
    发贴心情 
    哎,问题问了几天也没人回,自己搞定了.
    第一个数据插入把CLOB改成BLOB,因为我原先要放到数据库中的文件基于二进制.
    第二个sql语句有问题,只是转义符没弄好,string myQuery = "SELECT metaId FROM metaNodes2 WHERE xCol.exist ('/VectorMetadata/identificationInfo/citationInfo[author = "+x2+"]') = 1";
    改成: SELECT metaId FROM metanodes2 WHERE xCol.exist ('/VectorMetadata/identificationInfo/citationInfo[author ="+"\""+ x2+"\"" +"]') = 1
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/4/30 9:15:00
     
     cozywindlxfljm 美女呀,离线,快来找我吧!
      
      
      等级:大一新生
      文章:9
      积分:98
      门派:XML.ORG.CN
      注册:2006/11/8

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给cozywindlxfljm发送一个短消息 把cozywindlxfljm加入好友 查看cozywindlxfljm的个人资料 搜索cozywindlxfljm在『 XML 与 数据库 』的所有贴子 引用回复这个贴子 回复这个贴子 查看cozywindlxfljm的博客5
    发贴心情 
    朋友,有相关这方面的资料吗?给我发一份吧,不盛感激 xiangfenglv@sohu.com
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/11/10 9:25:00
     
     msnow 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(猛啃高等数学)
      文章:9
      积分:108
      门派:XML.ORG.CN
      注册:2006/11/29

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给msnow发送一个短消息 把msnow加入好友 查看msnow的个人资料 搜索msnow在『 XML 与 数据库 』的所有贴子 引用回复这个贴子 回复这个贴子 查看msnow的博客6
    发贴心情 
    高手,给我发一份 吧, hswmxr@tom.com
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2006/12/21 19:04:00
     
     aman0223 美女呀,离线,快来找我吧!
      
      
      等级:大一新生
      文章:0
      积分:60
      门派:XML.ORG.CN
      注册:2007/3/31

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给aman0223发送一个短消息 把aman0223加入好友 查看aman0223的个人资料 搜索aman0223在『 XML 与 数据库 』的所有贴子 引用回复这个贴子 回复这个贴子 查看aman0223的博客7
    发贴心情 
    发份给我啊!!!
    meiman0223@sina.com
    meiman0223@sina.com
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/3/31 21:58:00
     
     zh_star 帅哥哟,离线,有人找我吗?
      
      
      等级:大一新生
      文章:1
      积分:58
      门派:XML.ORG.CN
      注册:2007/4/24

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给zh_star发送一个短消息 把zh_star加入好友 查看zh_star的个人资料 搜索zh_star在『 XML 与 数据库 』的所有贴子 引用回复这个贴子 回复这个贴子 查看zh_star的博客8
    发贴心情 
    朋友发一份给我吧272505678@qq.com不胜感激
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/4/24 21:33:00
     
     kxc1984 美女呀,离线,快来找我吧!
      
      
      等级:大一(猛啃高等数学)
      文章:11
      积分:101
      门派:XML.ORG.CN
      注册:2007/12/12

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给kxc1984发送一个短消息 把kxc1984加入好友 查看kxc1984的个人资料 搜索kxc1984在『 XML 与 数据库 』的所有贴子 引用回复这个贴子 回复这个贴子 查看kxc1984的博客9
    发贴心情 
    高手,你在做什么东西啊?能给俺发份看看吧。谢了。cui5271@163.com
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2007/12/18 15:44:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XML 与 数据库 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/19 22:10:28

    本主题贴数9,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    93.750ms