- PR -

SQL文にて配列を検索する方法

投稿者投稿内容
uniqque
常連さん
会議室デビュー日: 2005/03/18
投稿数: 43
投稿日時: 2005-06-03 14:27
今、VB.NETでAccessファイルからデータを検索するシステムを実装しているのですが、
LIKE演算子にて検索する方法はうまくいくのですが
検索対象を文字配列にする方法がわかりません。
それともそんなものはなく一つずつやらないといけないのでしょうか。
以下がソースです。
***********************************************************************
Function Search(ByVal searchWord() As String)'searchWord()が検索したい文字配列です
'searchWord(0)="一人目"
'searchWord(1)="二人目"
'searchWord(2)="三人目"

adapter.SelectCommand = _
New System.Data.OleDb.OleDbCommand("select ID,氏名 from [Table] where 氏名 LIKE " & "'%" & searchWord() & "%'", olecn)

End Function
***********************************************************************
こんな感じなのですが& searchWord() &のところでエラーになってしまいます。
ほかにやり方がわかりません・・・
ご返答お待ちしてます。


にしざき
ぬし
会議室デビュー日: 2003/06/30
投稿数: 304
投稿日時: 2005-06-03 14:39
問題は、SQLの書き方がわからないことですか?
それとも、配列の使い方ですか?
uniqque
常連さん
会議室デビュー日: 2005/03/18
投稿数: 43
投稿日時: 2005-06-03 14:41
ご返答ありがとうございます。
SQLの書き方が分からないです…
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2005-06-03 14:49
こんにちは、じゃんぬ です。

引用:

SQLの書き方が分からないです…


いや、配列についても理解していないような...

引用:

こんな感じなのですが& searchWord() &のところでエラーになってしまいます。


配列なのですから、要素を指定してください。
[String] & [String()] & [String] なのでエラーになるのは当たり前です。



_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
uniqque
常連さん
会議室デビュー日: 2005/03/18
投稿数: 43
投稿日時: 2005-06-03 14:52
>>じゃんぬねっとさん
>[String] & [String()] & [String] なのでエラーになるのは当たり前です。
それは知っていたのですが配列を検索するという方法が分からなかったので
とりあえずこれを入れてました・・・
String()配列にはランダムな数の要素が入る処理なのでsearchWord(0),searchWord(1)…
というふうに一個一個指定するやり方ができないんです。
えんぞ@?
ぬし
会議室デビュー日: 2004/07/06
投稿数: 271
お住まい・勤務地: はまっこ
投稿日時: 2005-06-03 15:08
http://www.microsoft.com/japan/msdn/library/ja/cpref/html/frlrfsystemarraymemberstopic.asp
http://www.microsoft.com/japan/msdn/library/ja/cpref/html/frlrfsystemarrayclasstopic.asp
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2005-06-03 15:12
delichoさん、こんにちは。

引用:

String()配列にはランダムな数の要素が入る処理なのでsearchWord(0),searchWord(1)…
というふうに一個一個指定するやり方ができないんです。



とりあえず「For ループ」について調べてみて下さい。
今川 美保(夏椰)
ぬし
会議室デビュー日: 2004/06/10
投稿数: 363
お住まい・勤務地: 神奈川県茅ヶ崎市
投稿日時: 2005-06-03 15:15
引用:

delichoさんの書き込み (2005-06-03 14:52) より:
それは知っていたのですが配列を検索するという方法が分からなかったので
とりあえずこれを入れてました・・・


配列を検索するのではなく、
配列に格納されている値を検索対象としたいんだと思ったんですが。

で、私はSQLの立場から。
氏名 like '%名1%' Or 氏名 like '%名2%' Or ・・・
の用に配列数分LikeをOrで連結することになると思います。

スキルアップ/キャリアアップ(JOB@IT)