xquery--xml查询

5 篇文章 0 订阅
4 篇文章 0 订阅

 xquery--xml查询

SELECT TRPerson.exist('person/data/detail[@id = "10003"]') FROM ED_TRAINEDREQUEST

select trperson.query('person/data/detail[@id="10003"]') from ED_TRAINEDREQUEST

select trperson.value('person[1]/data[1]/detail[1]/@id','varchar(20)') from ED_TRAINEDREQUEST

SELECT * FROM ED_TRAINEDREQUEST where TRPerson.exist('person/data/detail[@id = "10007"]')<>0 and TRPerson.exist('person/data/detail[@type = "部门"]')<>0

SELECT * FROM ED_TRAINEDREQUEST where TRPerson.exist('person/data/detail[@id = "10003"] [@type="部门"]')<>0

sqlserver2005bit型可以直接用flase/true来存储.取值是返回相应的参数(DataTable返回boolean),gridview也支持相关的显示.

sql脚本在数据库里查时他们的值是1/0,这样在我们写查询条件时还得用1/0区别,但更新和插入直接用boolean型就好啦!

asp.net使用xquery查询时提示

"SELECT 失败,因为下列 SET 选项的设置不正确:'ARITHABORT'。请确保 SET 选项可正确用于计算列和/或查询通知和/ xml 数据类型方法的索引视图和/或索引。 "

通过以下办法解决,我用Alter Database epower Set ARITHABORT On解决问题

你先在Management Studio里面,新建查询,然后执行:

SELECT is_ARITHABORT_on FROM sys.databases

看看你数据库中的ARITHABORT选项是开(1)还是关(0)

然后如果现在是1,那就改成0,如果0,那就改成1

方法是执行

Alter Database 你的数据库名字 Set ARITHABORT On / Off

官方解释:

如果 SET ARITHABORT ON,并且 SET ANSI WARNINGS 也为 ON,则这些错误情况将导致查询终止。如果 SET ARITHABORT ON,但 SET ANSI WARNINGS OFF,则这些错误情况将导致批处理终止。如果在事务内发生错误,则回滚事务。如果 SET ARITHABORT OFF 并且发生了这些错误之一,则显示一条警告消息,并将 NULL 赋予算术运算的结果。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值