我正在尝试从SQL查询中设置变量:
declare @ModelID uniqueidentifer
Select @ModelID = select modelid from models
where areaid = 'South Coast'
Run Code Online (Sandbox Code Playgroud)
显然我没有这样做,因为它不起作用.有人可以提出解决方案吗?
谢谢!
我正在使用SQL Server 2000从表中打印出一些值PRINT.对于大多数非字符串数据,我可以转换为nvarchar以便能够打印它,但二进制值尝试使用字符的位表示进行转换.例如:
DECLARE @binvalue binary(4)
SET @binvalue = 0x12345678
PRINT CAST(@binvalue AS nvarchar)
Run Code Online (Sandbox Code Playgroud)
预期:
0×12345678
相反,它打印出两个乱码.
如何打印二进制数据的值?是否有内置或我需要自己滚动?
更新:这不是该行的唯一值,所以我不能只打印@binvalue.这更像PRINT N'其他东西'+ ???? + N'more stuff'.不确定这是否有所不同:我本身并没有尝试PRINT @binvalue.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Security.Cryptography;
using System.IO;
namespace EncryptionTest
{
class Program
{
static void Main(string[] args)
{
UnicodeEncoding ByteConverter = new UnicodeEncoding();
byte[] dataToEncrypt = ByteConverter.GetBytes("Test data");
string enc = Encrypt(dataToEncrypt);
}
static string Encrypt(byte[] data)
{
UnicodeEncoding ByteConverter = new UnicodeEncoding();
RSACryptoServiceProvider encrypt = new RSACryptoServiceProvider();
byte[] encryptedData = encrypt.Encrypt(data, false); //Repeat this line
return ByteConverter.GetString(encryptedData);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我使用'Set Next Statement'重复执行以下语句,即不执行任何其他代码行.
byte[] encryptedData = encrypt.Encrypt(data, false);
我查看了encryptedData中的字节,发现encryptedData中的字节每次都在变化.当然这是错的?如果公钥未更改且要加密的数据尚未更改,那么'encryptedData'字节也不应更改?
有没有一种方法可以使用Profiler来确定查询是否正在访问表?
我看到了一个名为Object:Opened(指示访问对象的时间,例如SELECT,INSERT或DELETE语句的时间)和的事件Object:Closed,但是它们似乎不起作用。
特别是,我使用Object:Opened和Object:Closed创建了一个简单的跟踪,没有过滤器(标准的“ Application Name not like'SQL Profiler'”过滤器除外)和ran SELECT TOP 1 * FROM TableName,但是未报告任何事件。
因此,有没有一种方法可以使用Profiler来确定是否从中选择了表?
我试图使用XSLT样式表来转换XHTML,但我甚至无法获得基本样式表来匹配任何内容.我确定我错过了一些简单的事情.
这是我的XHTML源文档(没什么大惊喜):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="generator" content=
"HTML Tidy for Windows (vers 25 March 2009), see www.w3.org" />
...
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
实际内容并不重要,我将在下面演示.顺便说一句,我很确定该文档是通过创建文档而形成的tidy -asxml.
我更复杂的XPath表达式没有返回任何结果,所以作为一个完整性测试,我试图使用以下样式表非常简单地转换它:
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" omit-xml-declaration="yes" indent="no"/>
<xsl:template match="/">
<xsl:text>---[</xsl:text>
<xsl:for-each select="html">
<xsl:text>Found HTML element.</xsl:text>
</xsl:for-each>
<xsl:text>]---</xsl:text>
</xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)
转换是通过完成的xsltproc --nonet stylesheet.xsl input.html,输出是:"--- [] ---"(即,它没有找到子元素html).但是,如果我将该for-each部分更改为:
<xsl:for-each select="*">
<xsl:value-of select="name()"/>
</xsl:for-each>
Run Code Online (Sandbox Code Playgroud)
然后我得到"--- [html] ---".同样,如果我使用for-each select="*/*",我会像我期望的那样得到"--- [headbody] …
Can anyone enlighten me as to why this bit of code spits back that the X is unsafe in 'try', well I know why, but more so how to fix it.
try X = lists:append(lists:zipwith3(fun(X, Y, Z) -> [X, Y, Z] end, Data1, Data2, Data3)) of
MP -> X
catch K -> (X = 0)
end.
%MP = [lists:zipwith3(X, Y, Z) || X, Y, Z <- [Data1, Data2, Data3]],
P = X
Run Code Online (Sandbox Code Playgroud)