小编Ian*_*oyd的帖子

SQL Server:"非常独特"的索引

在表中,我想确保在五列密钥上只存在唯一的值:

Timestamp Account RatingDate TripHistoryKey EventAction
========= ======= ========== ============== ===========
2010511   1234    2010511    1              INSERT
2010511   1234    2010511    4              INSERT
2010511   1234    2010511    7              INSERT
2010511   1234    2010511    1              INSERT   <---duplicate
Run Code Online (Sandbox Code Playgroud)

我只希望唯一约束,以行之间适用时EventActionINSERT:

Timestamp Account RatingDate TripHistoryKey EventAction
========= ======= ========== ============== ===========
2010511   1234    2010511    1              INSERT
2010511   1234    2010511    1              UPDATE
2010511   1234    2010511    1              UPDATE   <---not duplicate
2010511   1234    2010511    1              UPDATE   <---not duplicate
2010511   1234    2010511    1              DELETE   <---not duplicate
2010511 …
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2005 sql-server-2000 unique-constraint multiple-columns

4
推荐指数
1
解决办法
146
查看次数

在到SQL Server 2005的连接字符串中设置排序规则属性

我在web.config中有一个带有SQL Server 2005连接字符串的ASP.Net Web应用程序。

    Data Source=ABCSERVER;Network Library=DBMSSOCN;Initial Catalog=myDataBase;
User ID=myUsername;Password=myPassword;
Run Code Online (Sandbox Code Playgroud)

我想在web.config中为诸如法语之类的不同语言指定归类属性

    Data Source=ABCSERVER;Network Library=DBMSSOCN;Initial Catalog=myDataBase;
User ID=myUsername;Password=myPassword;Collation=French_CS_AS
Run Code Online (Sandbox Code Playgroud)

但是排序规则字在连接字符串中无效。

在SQL Server 2005连接字符串中用于指定排序规则的正确关键字是什么?

编辑

我了解可以在数据库安装期间设置排序规则,也可以更改排序规则。我不想在数据库中永久更改它。但是我希望SQLClient根据应用程序的设置来设置排序规则。我只想在使用SQL Query时使用它

SELECT * FROM TESTTABLE ORDER BY TESTCOLUMN COLLATE French_CS_AS
Run Code Online (Sandbox Code Playgroud)

我试图确保对于给定的连接,该连接的所有命令/查询将"French_CS_AS"基于连接字符串中的属性设置自动使用--而不是更改查询定义

globalization ado.net connection-string sql-server-2005

4
推荐指数
1
解决办法
1万
查看次数

Delphi:如何覆盖ShortDateFormat?

我意识到ShortDateFormat变量代表了用户的偏好.

我也意识到如果设置改变,Delphi将ShortDateFormat使用用户的设置自动刷新变量.

mm/dd/yy
Run Code Online (Sandbox Code Playgroud)

我有一个客户希望所有"短日期"显示在特定的,但他们不想要他们的Windows偏好.

mm/dd/yyyy
Run Code Online (Sandbox Code Playgroud)

在我的应用程序中,ShortDateFormat为了可以随时重置变量,更改变量的全局方法是什么?

注意:包含代码格式的示例日期格式掩码,以使帖子更具视觉吸引力

delphi localization date-format

4
推荐指数
2
解决办法
3314
查看次数

SQL Server:选择1行会导致1 + 3行受影响?

我从表中选择了一行:

select * from LCTs WHERE LCTGUID = 'B642B9E6-779A-4FD0-8514-294EAF87A9A6'

(1 row(s) affected)

(3 row(s) affected)
Run Code Online (Sandbox Code Playgroud)

如何获得受单个选择影响的4行(特别是因为它只返回一行)?

奖金信息:

  • SQL Server 2000
  • LCT是一个真正的表(即不是视图或UDF)
  • 桌子上没有触发器
  • 这是SQL Server 2000,它没有DDL审核

更奇怪的是,如果我更新那一行:

update LCTs SET IsDirty = 1 WHERE LCTGUID = 'B642B9E6-779A-4FD0-8514-294EAF87A9A6'

(1 row(s) affected)   

(5 row(s) affected)
Run Code Online (Sandbox Code Playgroud)

在SQL Server 2000中,如何在表中没有触发器的情况下更新一行影响6行?

sql-server select records sql-server-2000

4
推荐指数
1
解决办法
371
查看次数

声明没有列定义的表变量?

在SQL Server中,有没有办法在不知道表定义的情况下声明表变量?

免责声明:

DECLARE @Results TABLE
INSERT INTO @Results EXEC MyProc @param1 = @myValue
Run Code Online (Sandbox Code Playgroud)

要么

DECLARE @Results TABLE
SELECT INTO @Results EXEC MyProc @param1 = @myValue
Run Code Online (Sandbox Code Playgroud)

要么

DECLARE @Results TABLE
EXEC MyProc @param1 = @myValue INTO @Results
Run Code Online (Sandbox Code Playgroud)

要么

DECLARE @Results TABLE
EXEC INTO @Results MyProc @param1 = @myValue
Run Code Online (Sandbox Code Playgroud)

要么

DECLARE @Results TABLE
SELECT * FROM EXEC MyProc @param1 = @myValue INTO @Results
Run Code Online (Sandbox Code Playgroud)

要么

DECLARE @Results TABLE
SELECT * INTO @Results FROM EXEC MyProc @param1 = @myValue
Run Code Online (Sandbox Code Playgroud)

要么

DECLARE @Results TABLE …
Run Code Online (Sandbox Code Playgroud)

stored-procedures sql-server-2000

4
推荐指数
2
解决办法
4170
查看次数

我的Visual Studio自动递增构建号语法有什么问题?

我知道Visual Studio无法以人们期望的方式增加构建号,但它支持随机化构建号:

我的AssemblyInfo.cs文件包含:

// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version 
//      Build Number
//      Revision
//
// You can specify all the values or you can default the Build and Revision Numbers 
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyFileVersion("1.0.*")]
Run Code Online (Sandbox Code Playgroud)

然而它给出了我看来非感性的结果(甚至允许Visual Studio的伪随机版本号): 替代文字

所以更简单的问题是:

我投入了什么AssemblyInfo.cs让它发挥作用?

MSDN(为清晰起见重新格式化):

您可以指定所有值,也可以使用星号(*)接受默认的内部版本号,修订号或两者.例如,

[assembly:AssemblyVersion("2.3.25.1")]
Run Code Online (Sandbox Code Playgroud)

表示2为主要版本,3表示次要版本,25表示内部版本号,1表示版本号.版本号如

[assembly:AssemblyVersion("1.2.*")] 
Run Code Online (Sandbox Code Playgroud)

指定1作为主要版本,2指定为次要版本,并接受默认的构建和修订号.版本号如

[assembly:AssemblyVersion("1.2.15.*")]
Run Code Online (Sandbox Code Playgroud)

指定1作为主要版本,2作为次要版本,15作为构建号,并接受默认修订号.

默认内部版本号每天递增.默认修订号是随机的. …

random visual-studio build-numbers

4
推荐指数
2
解决办法
3132
查看次数

Delphi:构造不调用重写的虚拟构造函数

我有一个例子的后代TBitmap:

TMyBitmap = class(TBitmap)
public
    constructor Create; override;
end;

constructor TMyBitmap.Create;
begin
   inherited;
   Beep;
end;
Run Code Online (Sandbox Code Playgroud)

在运行时,我构造其中一个TMyBitmap对象,将图像加载到其中,并将其放置TImage在窗体上:

procedure TForm1.Button1Click(Sender: TObject);
var
   g1: TGraphic;
begin
   g1 := TMyBitmap.Create;
   g1.LoadFromFile('C:\...\example.bmp');

   Image1.Picture.Graphic := g1;
end;
Run Code Online (Sandbox Code Playgroud)

在里面TPicture.SetGraphic你可以看到它通过构造一个新的,并调用.Assign新构建的克隆来制作图形的副本:

procedure TPicture.SetGraphic(Value: TGraphic);
var
   NewGraphic: TGraphic;
begin
   ...
   NewGraphic := TGraphicClass(Value.ClassType).Create;
   NewGraphic.Assign(Value);
   ...
end;
Run Code Online (Sandbox Code Playgroud)

构造新图形类的行:

NewGraphic := TGraphicClass(Value.ClassType).Create;
Run Code Online (Sandbox Code Playgroud)

正确调用我的构造函数,一切都很好.


我想做类似的事情,我想克隆一个TGraphic:

procedure TForm1.Button1Click(Sender: TObject);
var
   g1: TGraphic;
   g2: TGraphic;
begin
   g1 := TMyBitmap.Create;
   g1.LoadFromFile('C:\...\example.bmp');

   //Image1.Picture.Graphic := g1; …
Run Code Online (Sandbox Code Playgroud)

delphi virtual constructor delphi-5

4
推荐指数
1
解决办法
1039
查看次数

iphone:将CALayer作为子层添加到UIButton的层会导致EXC_BAD_ACCESS

嘿人,我尝试为UIButtonTypeRoundedRect添加一个漂亮的渐变.以下代码在.中实现

viewWillAppear:(BOOL)animated   
Run Code Online (Sandbox Code Playgroud)

我的视图控制器的功能.

UIButton *tempButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; 
tempButton.frame = CGRectMake(left, top, 80.0f, 80.0f); 

CAGradientLayer * hintergrundButtonLayer = [[CAGradientLayer alloc] init];
[hintergrundButtonLayer setBounds:tempButton.bounds];
[hintergrundButtonLayer setColors:[NSArray arrayWithObjects: 
                   [UIColor colorWithRed:0.2 green:0.3 blue:0.4 alpha:1.0],
                   [UIColor colorWithRed:0.4 green:0.5 blue:0.6 alpha:1.0], 
                   nil]];

[hintergrundButtonLayer setPosition: 
             CGPointMake([tempButton bounds].size.width/2, 
                         [tempButton bounds].size.height/2)];

[hintergrundButtonLayer setLocations:
                       [NSArray arrayWithObjects:
                              [NSNumber numberWithFloat:0.0], 
                              [NSNumber numberWithFloat:1.0], 
                              nil]];

//      hintergrundButtonLayer.zPosition = -10;
//      hintergrundButtonLayer.frame = [tempButton bounds];


[tempButton addTarget:self action:@selector(switchVendorOnOff:) forControlEvents:UIControlEventTouchUpInside];


CALayer * downButtonLayer = [tempButton layer];
[downButtonLayer setMasksToBounds:YES];
[downButtonLayer setCornerRadius:10.0];
[downButtonLayer setBorderWidth:1.2];
[downButtonLayer setBorderColor:[[UIColor blackColor] …
Run Code Online (Sandbox Code Playgroud)

iphone gradient exc-bad-access uibutton calayer

4
推荐指数
1
解决办法
5700
查看次数

Windows-查看活动的ETW会话,以便我可以关闭其中一个

我正在使用Windows API的事件跟踪,并且会不时地运行我的应用程序,并且在打开它后无法关闭ETW跟踪控制器会话。

基本上::StartTrace([out] handle...),在完成处理后我会关闭该句柄(不关闭,请使用::StopTrace()函数完成)

我正在寻找一种可以向我显示活动会话的工具,因此可以手动将其关闭。没有它,我必须重新启动我的PC才能在关机时关闭控制器会话。

另外,在同一个ETW区域(在Win 7上),我知道我应该能够使用wbemtest.exe查看公共MOF描述的数据布局。我应该在那里进入

- Connect -> Namespace = \\root\wmi\EventTrace
Run Code Online (Sandbox Code Playgroud)

查看MOF数据。但是我收到“ RPC服务器不可用”的提示。在该屏幕中使用dafaults值:IWBemLocator(Namespaces),如何解释密码= null,身份验证级别=数据包。

在凭据区域中,我有用户名和密码(我尝试过),但是还有另一个空字段-权限。有没有办法查看MOF数据?我在Win 7下运行了这种提升。

etw

4
推荐指数
2
解决办法
2963
查看次数

如何在非unicode Delphi版本中构建具有diacratic的WideString?

我正在尝试构建一个(测试)WideString:

á(U + 00E1小写字母拉丁文A,急性)

但使用它的分解形式:

拉丁文小写字母A(U + 0061)结合急性加速(U + 0301)

所以我有代码片段:

var
    test: WideString;
begin
   test := #$0061#$0301;
   MessageBoxW(0, PWideChar(test), 'Character with diacratic', MB_ICONINFORMATION or MB_OK);
end;
Run Code Online (Sandbox Code Playgroud)

除了它似乎不起作用:

在此输入图像描述

可能是一个错误MessageBox,但我会继续说,它更可能是我的代码中的错误.

我尝试过的其他一些变化:

test := WideString(#$0061#$0301);


const
    SmallLetterLatinAWithAcuteDecomposed: WideString = #$0061#$0301;
test := SmallLetterLatinAWithAcuteDecomposed


test := #$0061+#$0301;  (Doesn't compile; incompatible types)


test := WideString(#$0061)+WideString(#$0301);  (Doesn't compile; crashes compiler)


test := 'a'+WideString(#$0301);  (Doesn't compile; crashes compiler)


//Arnauld's thought:
test := …
Run Code Online (Sandbox Code Playgroud)

delphi unicode delphi-5 unicode-string widestring

4
推荐指数
1
解决办法
959
查看次数