2014-11-24 75 views
0

所以我一直在使用Visual Studio中的查詢生成器(visual basic)來搜索本地mdb文件。我有一個單擊按鈕來提示搜索,並且它工作正常,但不區分大小寫。以下是我迄今爲止:在vb.net中區分大小寫的sql搜索

SELECT ID, LastName, FirstName, FullTime, HireDate, Salary 
FROM SalesStaff 
WHERE LastName like ? + '%' 

我的教授希望我們使用InStr機能的研究,但我怎麼得到這一個提示工作?

InputBox在我的vb表格代碼)。此外,它似乎也不區分大小寫。這是我第一次使用SQL,所以我幾乎不知道自己在做什麼。

在此先感謝!

+0

默認的MS SQL安裝不區分大小寫。以下是如何暫時或永久改變它。 http://blog.sqlauthority.com/2007/04/30/case-sensitive-sql-query-search/ – 2014-11-24 23:43:13

+0

它告訴我ALTER TABLE不支持... – Genoe 2014-11-25 00:52:31

+0

ALTER TABLE是核心SQL標準的一部分.. ..你確定它沒有告訴你,你沒有權利桌子? – 2014-11-25 01:52:58

回答

1

您可以修改數據庫/表的排序規則設置。 或者如果你只是想在這一個語句區分大小寫的比較,你可以使用關鍵字collate,如下面:

select 1 where 'abc' = 'ABC' 
select 1 where 'abc' collate Latin1_General_CS_AS = 'ABC' collate Latin1_General_CS_AS 
select 1 where 'abc' collate Latin1_General_CI_AS = 'ABC' collate Latin1_General_CI_AS 
select 1 where upper('abc') collate Latin1_General_CS_AS = 'ABC' collate Latin1_General_CS_AS 
select 1 where upper('abc') collate Latin1_General_CI_AS = 'ABC' collate Latin1_General_CI_AS 

CI表示不區分大小寫。

CS代表區分大小寫。