我有一个C#程序,它使用SQL Server管理对象(SMO)接口触发SQL Server代理作业.它看起来像:
Server ssis_server = new Server(
new ServerConnection(SERVER_NAME, SERVER_USERNAME, SERVER_PASSWORD)
);
var agent = ssis_server.JobServer;
var ssis_job = agent.Jobs[job_name];
var current_status = ssis_job.CurrentRunStatus;
if (current_status == JobExecutionStatus.Idle)
{
ssis_job.Start();
OnSuccess("Job started: " + job_name);
}
else
{
OnError("Job is already running or is not ready.");
}
Run Code Online (Sandbox Code Playgroud)
此时我正在使用SQL Server身份验证来简化操作.
现在,我的问题是,除非它SERVER_USERNAME是'sysadmin'dbo角色的一部分,ssis_job.CurrentRunStatus总是' Idle' - 即使我知道作业正在运行.它没有错误,只是总是报告空闲.
如果用户是管理员,则按预期返回状态.
你说的角色会员?
好吧,我将SERVER_USERNAMESQL Server登录添加到msdb Role SQLAgentOperatorRole,这似乎没有帮助.
作业的所有者是系统管理员帐户 - 如果这是问题,我不知道如何解决它.
有任何想法吗?
我(彻底)学习SQL,并且遇到了这个GROUP BY条款.
GROUP BY根据您提供的参数聚合或分组结果集.如果在查询中使用此子句,则可以对结果集执行聚合函数,以查找结果集的统计信息,如查找平均值(AVG())或频率(COUNT()).
我的问题是:GROUP BY语句在没有伴随聚合函数的情况下是否有用?
更新
使用GROUP BYas DISTINCT(可能)是一个坏主意的同义词因为我怀疑它更慢.
可能重复:
如何更改导航栏上"后退"按钮的标题
情况:
我有一个由导航控制器管理的UIViewController.我可以通过简单地调用来设置覆盖UIViewController的导航栏的标题self.title = @"title".但是,我希望能够设置导航栏的后退按钮文本(对于不同的语言,这样......)
问题:
我不知道如何设置后退按钮的文本.
问题:
如何设置UINavigation栏的后退按钮(以编程方式不在IB中)?
我有一个Win32原生VC++应用程序,在进入WinMain()时启动一个单独的线程,然后在其他线程运行时执行一些有用的工作,然后简单地退出WinMain()- 另一个线程没有明确停止.
这篇博文说,在这种情况下.NET应用程序不会终止,因为另一个线程仍在运行.这同样适用于本机Win32应用程序吗?
退出前我是否必须停止所有线程?
我打算建一个纸牌游戏.游戏将像MahJong.我想要一些参考代码或链接开始.如果您有,请分享.
我有关于内存管理的查询.
让我们从一个例子开始吧.假设我们有一个类如下.
@interface myClass : NSObject {
NSString *xyz;
}
@end
Run Code Online (Sandbox Code Playgroud)
现在,请参阅实施.
@interface myClass : NSObject {
NSString *xyz;
}
@end
@implementation myClass
-(void)abc{
// xyz allocted here
}
-(void)pqr{
// retained or copied many times or may not a single time
}
-(void)mno{
// retained or copied many times or may not a single time
}
-(void)jpg{
// may be released more than one time or may be not
}
//-(void)dealloc{
// [xyz release];
// [super dealloc];
//}
// …Run Code Online (Sandbox Code Playgroud) 目前我从闪存驱动器中完成了所有工作.让事情变得便携,我可以在工作的同时学习Web开发.目前我运行的是带有XAMPP,Notepad ++和Chrome的Portableapps.
我的问题是,是否有人知道可以在闪存驱动器上移植的版本控制系统?我刚刚了解了版本控制的重要性,我想要开始,我只需要一些适用于我的设置的东西.
编辑:只是为了澄清,整个事情应该能够在完全外国的计算机上独自运行闪存驱动器.因此,如果我去埃德娜阿姨的家里聚会,我可以去她的电脑,插上我的闪存驱动器然后去.如果你在他们花哨的新电脑上安装除了单人纸牌之外的任何东西,埃德娜姨妈的世界会非常生气.所以它不能留下任何东西
我有一个名为NUMS的表,其中有一列n.
我在其中填充值1,2,3,4,5,null.
现在是查询
SELECT n FROM Nums
WHERE n IN (1, 2, null)
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我猜它已转换为
SELECT n FROM Nums
Where n = 1 OR n = 2 OR n = null
Run Code Online (Sandbox Code Playgroud)
我也将n与null值进行比较,该值应该产生未知,并且它应该返回一个空集.但是它返回1,2(null不返回,尽管包含在IN运算符中)
现在是查询
SELECT n FROM Nums WHERE n NOT IN(1, 2, null)
Run Code Online (Sandbox Code Playgroud)
...转换为:
SELECT n FROM Nums
Where n!=1 AND n!=2 AND n!=null
Run Code Online (Sandbox Code Playgroud)
这里我上面所说的工作,并没有返回任何东西.
任何人都可以详细解释发生了什么.