我正在创建一个存储过程来搜索表.我有许多不同的搜索字段,所有这些字段都是可选的.有没有办法创建一个存储过程来处理这个?假设我有一个包含四个字段的表:ID,FirstName,LastName和Title.我可以这样做:
CREATE PROCEDURE spDoSearch
@FirstName varchar(25) = null,
@LastName varchar(25) = null,
@Title varchar(25) = null
AS
BEGIN
SELECT ID, FirstName, LastName, Title
FROM tblUsers
WHERE
FirstName = ISNULL(@FirstName, FirstName) AND
LastName = ISNULL(@LastName, LastName) AND
Title = ISNULL(@Title, Title)
END
Run Code Online (Sandbox Code Playgroud)
这种作品.但是它会忽略FirstName,LastName或Title为NULL的记录.如果未在搜索参数中指定Title,我想包含Title为NULL的记录 - 对于FirstName和LastName是相同的.我知道我可以用动态SQL做到这一点,但我想避免这种情况.
为什么我会得到错误"类型'字符串'必须是不可为空的值类型才能在泛型类型或方法'System.Nullable'中将它用作参数'T'?"
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Diagnostics;
using Universe;
namespace Universe
{
public class clsdictionary
{
private string? m_Word = "";
private string? m_Meaning = "";
string? Word {
get { return m_Word; }
set { m_Word = value; }
}
string? Meaning {
get { return m_Meaning; }
set { m_Meaning = value; }
}
}
}
Run Code Online (Sandbox Code Playgroud) 我已经尝试了许多使用orderBy进行ng-repeat的例子,但我不能让我的json使用它.
<div ng-app>
<script type="text/javascript" src="http://code.angularjs.org/1.0.1/angular-1.0.1.js"></script>
<div ng:controller="Main">
<div ng-repeat="release in releases| orderBy:'environment_id'">
{{release.environment_id}}
</div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
还有JSON
function Main($scope) {
$scope.releases = {
"tvl-c-wbap001 + tvl-webapp": {
"timestamp": " 05:05:53 PM ",
"environment_id": "CERT5",
"release_header": "Projects/Dev",
"date": "19 Oct",
"release": "12.11.91-1"
},
"tvl-c-wbap401 + tvl-webapp": {
"timestamp": " 10:07:25 AM ",
"environment_id": "CERT4",
"release_header": "Future Release",
"date": "15 Oct",
"release": "485-1"
},
"tvl-c-wbap301 + tvl-webapp": {
"timestamp": " 07:59:48 AM ",
"environment_id": "CERT3",
"release_header": "Next Release",
"date": "15 Oct", …Run Code Online (Sandbox Code Playgroud) 我是Nginx的新手,我正试图让子域工作.
我想做的是拿我的域名(让我们称之为example.com)并添加:
sub1.example.com,sub2.example.com,也有www.example.com 可用.我知道如何用Apache做到这一点,但Nginx是一个真正的头脑.
我正在运行Debian 6.
我目前的/etc/nginx/sites-enabled/example.com:
server {
server_name www.example.com example.com;
access_log /srv/www/www.example.com/logs/access.log;
error_log /srv/www/www.example.com/logs/error.log;
root /srv/www/www.example.com/public_html;
location / {
index index.html index.htm;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /srv/www/www.example.com/public_html$fastcgi_script_name;
}
}
Run Code Online (Sandbox Code Playgroud)
它正在努力为example.com和www.example.com提供服务.
我试图在同一个文件中添加第二个服务器块,如:
server {
server_name www.example.com example.com;
access_log /srv/www/www.example.com/logs/access.log;
error_log /srv/www/www.example.com/logs/error.log;
root /srv/www/www.example.com/public_html;
server {
server_name sub1.example.com;
access_log /srv/www/example.com/logs/sub1-access.log;
error_log /srv/www/example.com/logs/sub1-error.log;
root /srv/www/example.com/sub1;
}
location / {
index index.html index.htm;
}
location ~ …Run Code Online (Sandbox Code Playgroud) 我已经创建并安装了几次服务.最初它工作正常,但在服务代码中的一些更改后,当我在Services.msc中重新启动服务时,它开始给出错误:
错误1053:服务未及时响应启动或控制请求
码:
public partial class AutoSMS : ServiceBase
{
public AutoSMS()
{
InitializeComponent();
eventLog1.Clear();
if (!System.Diagnostics.EventLog.SourceExists("MySource"))
{
System.Diagnostics.EventLog.CreateEventSource(
"MySource", "MyNewLog");
}
eventLog1.Source = "MySource";
eventLog1.Log = "MyNewLog";
Timer checkForTime = new Timer(5000);
checkForTime.Elapsed += new ElapsedEventHandler(checkForTime_Elapsed);
checkForTime.Enabled = true;
}
protected override void OnStart(string[] args)
{
eventLog1.WriteEntry("In OnStart");
}
protected override void OnStop()
{
eventLog1.WriteEntry("In onStop.");
}
void checkForTime_Elapsed(object sender, ElapsedEventArgs e)
{
string Time = "15:05:00";
DateTime dateTime = DateTime.ParseExact(Time, "HH:mm:ss",
CultureInfo.InvariantCulture);
if (DateTime.Now == dateTime) ;
eventLog1.WriteEntry(Time); …Run Code Online (Sandbox Code Playgroud) 安装在c#中创建的Windows服务时,系统会提示我输入用户名和密码.我使用installutil工具来安装我的服务.询问用户名密码凭证的原因是什么?
我有一个包含多行的表,其中包含以下字段:
PersonName SongName Status
Run Code Online (Sandbox Code Playgroud)
我想使用从多选列表框中选择的名称,我可以检索值,然后执行where子句,以便显示所选人员可以播放的歌曲名称,因此状态已完成.
例如:
PersonName SongName Status
Holly Highland Complete
Holly Mech Complete
Ryan Highland Complete
Run Code Online (Sandbox Code Playgroud)
如果我从列表框中选择Holly和Ryan并按下按钮,则查询应该只显示Highland,因为这是他们都知道的.
我的SQL代码非常简单.我正在尝试从数据库中选择一些数据,如下所示:
SELECT * FROM DBTable
WHERE id IN (1,2,5,7,10)
Run Code Online (Sandbox Code Playgroud)
我想知道如何在select之前声明列表(在变量,列表,数组或其他内容中),而select中只使用变量名,如下所示:
VAR myList = "(1,2,5,7,10)"
SELECT * FROM DBTable
WHERE id IN myList
Run Code Online (Sandbox Code Playgroud) 为什么我不能得到这个隐藏领域的价值?
我控制了......
<asp:HiddenField ID="HiddenFieldServerDateTime" runat="server" />
Run Code Online (Sandbox Code Playgroud)
这呈现......
<input type="hidden" name="ctl00$cph_main$HiddenFieldServerDateTime" id="ctl00_cph_main_HiddenFieldServerDateTime" value="08/01/2010 10:54:11"
Run Code Online (Sandbox Code Playgroud)
我正试图获得使用的价值......
var serverDateTime = $("#HiddenFieldServerDateTime").attr('value');
Run Code Online (Sandbox Code Playgroud)
那有什么不对?
我更喜欢这个
var dateTime = $("[id$=_HiddenFieldServerDateTime]").val();
Run Code Online (Sandbox Code Playgroud) 我有两页.从第一页开始,我打开一个带有查询字符串的模态,该查询字符串包含客户端名称的值.然后我用它在打开的模态上设置一个隐藏字段.
我需要在新模态上使用TextBox来显示从第一个屏幕发送的值.
我尝试使用以下方法获取值:
var hv = $('hidClientField').val();`
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用.
这是我隐藏的领域:
<asp:HiddenField ID="hidClientName" runat="server" />`
Run Code Online (Sandbox Code Playgroud)
我在Page_Load后面的代码中设置它,如下所示:
hidClientName.Value = Request.QueryString["Client_Name"] ?? "";`
Run Code Online (Sandbox Code Playgroud)
任何想法将不胜感激.
c# ×3
asp.net ×2
jquery ×2
sql ×2
.net ×1
angularjs ×1
hidden-field ×1
hiddenfield ×1
javascript ×1
json ×1
nginx ×1
nullable ×1
sql-server ×1
subdomain ×1
t-sql ×1
timer ×1