SQL clr - MS-SQL Server / 非技术版
想用SQL CLR做如下的存储过程,但是发现报错:
{由于代码已经过优化或者本机框架位于调用堆栈之上,无法计算表达式的值。}
而且如果数据从case 1通过时就是正确的,从case 2通过时错误
并且在case 2中的myCommand.CommandText后如果是个select语句就是正确的,但是运行存储过程就通不过,而且单独测试存储过程是正确的,好像问题是出在record的发送上,求教!
[SqlProcedure]
public static void procClr(SqlXml sx)
{
XPathDocument doc = new XPathDocument(sx.CreateReader());
XPathNavigator nav = doc.CreateNavigator();
XPathNodeIterator i = nav.Select(@"/NewDataSet/StandardDT");
SqlDataRecord record =new SqlDataRecord(new SqlMetaData("i_num", SqlDbType.Int));
SqlPipe sp = SqlContext.Pipe;
sp.SendResultsStart(record);
while (i.MoveNext())
{
//----解析XML数据----
int inum=Convert.ToInt32(i.Current.Evaluate("string(i_num[1]/text())"));
//-----处理数据------
int flag=Function(inum);//自定义函数,无误
switch(flag)
{
case 1:
{
record.SetValues(1);
break;
}
case 2:
{
using (SqlConnection myConnection = new S
相关问答:
大家帮忙看看这2个sql语句哪个查询的速度更快点。谢谢帮忙。比较着急。在做性能测试。
select * from
表A LEFT OUTER JOIN 表B ON (表A.id || ' ' =表B.id) ,表C , 表D, 表E
Where其他条件
select * ......
场景如下:
客户把备份好的数据库,发给我,我在本机还原后,运行写好的存储过程,比较快,并且在实施那边运行同样比较快。但是当实施在客户那边运行的时候速度就非常的慢,时间超出了程序的时间限制。远程在客户那 ......
--drop table #T1
--drop table #T2
create Table #T1(ID int,
QueryID nvarchar(20),
ResultID1 nvarchar(20),
ResultID2 nvarchar(20))
create Table #T2(SortNo int,
QueryID nvarchar(20),
ResultID1 nv ......
从数据库中查询一张表的数据
select 部门,姓名 from tb
如何才能生成下面的xml格式
XML code:
<folder state="unchecked" label="全部">
<folder state="unchecked&qu ......
protected void btnLogin_Click(object sender, EventArgs e)
{
SqlConnection conn = new SqlConnection("Server = (local);user id = sa;pwd = 1;database = Login");
&nb ......