討論區快速選單
知識庫快速選單
軟體開發過程中有哪些資安漏洞? 政府補助!學嵌入式+物聯網
[ 回上頁 ] [ 討論區發言規則 ]
vb連mySQL做查詢系統?
更改我的閱讀文章字型大小
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/12 下午 03:27:51
我想用vb連mySQL做一個查詢系統,

想請問一下,

下列的語法不知是否正確?不正確的話要如何更改呢?

rs.Open "SELECT temper1 FROM be2006 WHERE 1 AND day = '2006-03-07' ", conn, adOpenStatic, adLockOptimistic

如要更改成變數要如何更改?
temper1是我的[Combo1.ListIndex = Combo1.ListIndex ''選擇數值]中的選項之一,
2006是我的[Combo2.ListIndex = Combo2.ListIndex ''選擇年份]中的選項之一,
03是我的[Combo3.ListIndex = Combo3.ListIndex ''選擇月份]中的選項之一,
07是我的[Combo4.ListIndex = Combo4.ListIndex ''選擇日期]中的選項之一,

要如何更改呢?請大大指教!
作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/12 下午 08:23:47
>rs.Open 'SELECT temper1 FROM be2006 WHERE 1 AND day = ''2006-03->07'' ', conn, adOpenStatic, adLockOptimistic
有一個錯誤 where 1 <----1不代表啥麼!
請了解VB字串連結的效果 + , &
SQL="SELECT " & 資料庫變數 & " FROM BE2006 WHERE 1=?? AND DAY='" & DAY & "'"

RS.OPEN SQL,CONN等
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/13 下午 08:02:28
很謝謝大大的回答,但是有點不太懂,

是不是我把where 1拿掉就可以了呢?

還是要改很多地方呢?

如果以我的例子的話,要如何改呢?


>>rs.Open ''SELECT temper1 FROM be2006 WHERE 1 AND day = ''''2006-03->07'''' '', conn, adOpenStatic, adLockOptimistic
>有一個錯誤 where 1 <----1不代表啥麼!
>請了解VB字串連結的效果 + , &
>SQL='SELECT ' & 資料庫變數 & ' FROM BE2006 WHERE 1=?? AND DAY=''' & DAY & '''
>
>RS.OPEN SQL,CONN等
>
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/13 下午 08:02:51
很謝謝大大的回答,但是有點不太懂,

是不是我把where 1拿掉就可以了呢?

還是要改很多地方呢?

如果以我的例子的話,要如何改呢?


>>rs.Open ''SELECT temper1 FROM be2006 WHERE 1 AND day = ''''2006-03->07'''' '', conn, adOpenStatic, adLockOptimistic
>有一個錯誤 where 1 <----1不代表啥麼!
>請了解VB字串連結的效果 + , &
>SQL='SELECT ' & 資料庫變數 & ' FROM BE2006 WHERE 1=?? AND DAY=''' & DAY & '''
>
>RS.OPEN SQL,CONN等
>
作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/13 下午 09:18:08
where 欄位名稱 = '字串' and 欄位名稱=數字
注意字串兩邊有單引號,數字沒有

"where 欄位1='" & 字串變數 & "' and 欄位2=" & 數字變數

你的舉例沒有說明日期欄位是字串還是日期格式
如果是日期必須兩邊加上 #號表示

#2006/03/02#這是日期格式 , '2006/03/02'這是字串格式
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/16 上午 09:40:27
大大,基本上是了解了,但是試了很次,在查詢語法那行就是會失敗,

所以我想要先試直接查詢,先不要用變數下去,

我就單純想要查詢2006-3-13(字串)的temper1(欄位名稱)數值,

將查詢結果顯示在List1上,

我把整段的程式貼上來,大大幫我看錯在哪裡?

Private Sub sub_save() '連結MySQL

Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset

conn.CursorLocation = adUseServer
conn.ConnectionString = "DRIVER=MySQL ODBC 3.51 DRIVER;SERVER=140.127.xx.xx;DATABASE=bohan;USER=root;password=xxxxxx;OPTION=3;"

rs.CursorType = adOpenDynamic

rs.Open "SELECT temper1 FROM be2006 WHERE day = '2006-03-13' ", conn, adOpenStatic, adLockOptimistic

Do Until rs.EOF
tmp = ""
For i = 0 To rs.Fields.Count - 1
tmp = tmp & rs.Fields(i) & ""
Next
List1.AddItem tmp
rs.MoveNext
Loop


    rs.Close
    Set rs = Nothing
conn.Close
Set conn = Nothing
End Sub
作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/16 下午 06:38:03
>我就單純想要查詢2006-3-13(字串)的temper1(欄位名稱)數值,
此話整講,聽不懂---------------------------------------^
2006-3-13是字串格式,temper1是欄位,數值是啥麼!

>rs.Open 'SELECT temper1 FROM be2006 WHERE day = ''2006-03-13'' ', conn, adOpenStatic, adLockOptimistic
這行看來沒錯,但是............
以下程式是呼要show出所有欄位的內含,但是上列open命令只選擇temper1欄位,這點也是錯誤!請更正select * from be2006 where ......

>Do Until rs.EOF
>tmp = '
>For i = 0 To rs.Fields.Count - 1
>tmp = tmp & rs.Fields(i) & '
>Next
>List1.AddItem tmp
>rs.MoveNext
>Loop
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/16 下午 07:05:03
>我就單純想要查詢2006-3-13(字串)的temper1(欄位名稱)數值,
>此話整講,聽不懂---------------------------------------^
就是我想要查詢2006-3-13所有temper1下的數值,有幾個就秀幾個!
資料表的欄位排法如下:
|temper1| |temper2| |humidity| |illumin| |day|
|22.3 | | 18.5 | |88.12 | |880 | |2006-03-12|
|22.7 | | 18.6 | |88.14 | |889 | |2006-03-13|
|22.5 | | 18.8 | |88.17 | |999 | |2006-03-13|
....................
...................
.....................
.....................無限多

>2006-3-13是字串格式,temper1是欄位,數值是啥麼!
temper1欄位下的數值都數字
>gt;rs.Open ''SELECT temper1 FROM be2006 WHERE day = ''''2006-03-13'''' '', conn, adOpenStatic, adLockOptimistic
>這行看來沒錯,但是............
>以下程式是呼要show出所有欄位的內含,但是上列open命令只選擇temper1欄位,這點也是錯誤!請更正select * from be2006 where ......
如果我就只是要查詢be2006資料表內temper1欄的數值的話,上述寫法應該沒錯吧!

這樣解釋不知大大聽的懂嗎?很希望可以解決這個問題!
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/16 下午 07:05:11
>我就單純想要查詢2006-3-13(字串)的temper1(欄位名稱)數值,
>此話整講,聽不懂---------------------------------------^
就是我想要查詢2006-3-13所有temper1下的數值,有幾個就秀幾個!
資料表的欄位排法如下:
|temper1| |temper2| |humidity| |illumin| |day|
|22.3 | | 18.5 | |88.12 | |880 | |2006-03-12|
|22.7 | | 18.6 | |88.14 | |889 | |2006-03-13|
|22.5 | | 18.8 | |88.17 | |999 | |2006-03-13|
....................
...................
.....................
.....................無限多

>2006-3-13是字串格式,temper1是欄位,數值是啥麼!
temper1欄位下的數值都數字
>gt;rs.Open ''SELECT temper1 FROM be2006 WHERE day = ''''2006-03-13'''' '', conn, adOpenStatic, adLockOptimistic
>這行看來沒錯,但是............
>以下程式是呼要show出所有欄位的內含,但是上列open命令只選擇temper1欄位,這點也是錯誤!請更正select * from be2006 where ......
如果我就只是要查詢be2006資料表內temper1欄的數值的話,上述寫法應該沒錯吧!

這樣解釋不知大大聽的懂嗎?很希望可以解決這個問題!
作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/16 下午 09:00:07
喔!了解了
SELECT temper1,day FROM be2006 WHERE day = '2006-03-13', conn, adOpenStatic, adLockOptimistic
這樣就可以了

do while not rs.eof
    把temper1欄位裡的資料給抓出來
    rs.movenext
loop

作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/17 下午 01:03:34

>喔!了解了
>SELECT temper1,day FROM be2006 WHERE day = ''2006-03-13'', conn, adOpenStatic, adLockOptimistic
>這樣就可以了
>do while not rs.eof
> 把temper1欄位裡的資料給抓出來
> rs.movenext
>loop

我照大大的說法改了,
rs.Open "SELECT temper1,day FROM be2006 WHERE day = '2006-03-13'", conn, adOpenStatic, adLockOptimistic <--這行出現錯誤

Do While Not rs.EOF
tmp = ""
For i = 0 To rs.Fields.Count - 1
tmp = tmp & rs.Fields(i) & ""
Next
List1.AddItem tmp
rs.MoveNext
Loop

可是出現錯誤訊息耶!錯誤訊息如下:
執行階段錯誤’3709’
無法用連線來執行此操作。內容可能已關閉或無效。

作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/17 下午 07:16:33
以下使我的程式碼,Select 已經改成你的資料庫
試試看!
可能有網路連接的問題!
如果還是不行,請直接mail給我測試用帳號,IP,密碼,資料庫等資訊,我直接幫你用vb連看看
alou@loulo.org

Set conn = New ADODB.Connection
conn.ConnectionString = "DRIVER={MySQL ODBC 3.51 Driver};" & "server=" + Sip + ";" & " DATABASE=****;" & "UID=****;PWD=****; OPTION=3"
conn.Open
Set rs = New ADODB.Recordset
rs.CursorLocation = adUseServer
rs.Open "SELECT temper1,day FROM be2006 WHERE day = ''''2006-03-13'''', conn
作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/18 上午 10:37:55
附檔程式碼已經幫你修改過,你的範例還是有錯誤!
Mysql server必須開啟 3306 port,我們這裡連不上去
你在用範例試試!
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/18 下午 01:38:30

>附檔程式碼已經幫你修改過,你的範例還是有錯誤!
>Mysql server必須開啟 3306 port,我們這裡連不上去
>你在用範例試試!
>

十分給謝大大的幫助,現在已經可以跑出數值來了,

接下來我要自己研究改成變數,

成功後最後研究用圖形顯示,我自己先試試看,

如果有問題再向大大請教!!屆時請大大不吝指教!!

再次感謝!!
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/20 上午 11:17:21
大大:

在combo1變數對應方面有點問題,

Combo1.ListIndex = Combo1.ListIndex '選擇項次
介面上選擇的項目有溫度1.溫度2.溼度.照度,

可是要對應到資料庫裡的欄位為:
溫度1-->temper1
溫度2-->temper2
溼度 -->humidity
照度 -->illumin

我程式這樣寫但跑不出來耶,可以跟我說要怎麼寫嗎?

Dim item_name(20) As String
item_name(X) = Combo1.Text
item_name(0) = "temper1"
item_name(1) = "temper2"
item_name(2) = "humidity"
item_name(3) = "illumin"

rs.Open "SELECT item_name(X) FROM be2006 WHERE day =.....
上行的item_name(X)有問題,要怎麼改寫呢?請大大指教!
作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/20 下午 07:26:52
>rs.Open 'SELECT item_name(X) FROM be2006 WHERE day =.....
>上行的item_name(X)有問題,要怎麼改寫呢?請大大指教!

在 " "之間的東東,vb都把它當字串處理,你資料庫沒有 item_name(x)的欄位是吧!

Rs.open " select " & item_name(x) & " from be2006 where ......."就可以了

你應該先學習字串與變數的連接[相加]方式
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/21 下午 01:27:26
大大,你的建議我會去好好學習的,照你所說的改了以後是可以顯示了,

但是我的選項不管選哪一個,它都只出現temper1這個變數,並不會隨著選項而變耶?

是不是我哪裡有問題呢?我試過很多次了,但都是一樣的結果!

item_name(X) = Combo1.Text
item_name(0) = "temper1"
item_name(1) = "temper2"
item_name(2) = "humidity"
item_name(3) = "illumin"

>rs.Open ''SELECT item_name(X) FROM be2006 WHERE day =.....
>上行的item_name(X)有問題,要怎麼改寫呢?請大大指教!
>
>在 ''之間的東東,vb都把它當字串處理,你資料庫沒有 item_name(x)的欄位是吧!
>
>Rs.open ' select ' & item_name(x) & ' from be2006 where .......'就可以了
>
>你應該先學習字串與變數的連接[相加]方式
>
作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/21 下午 09:15:38
如果發生類似莫名的問題,換做是我我會如此測試
在每次改變 item_name(x)值時

Dim Sql as string
進行字串相加

Sql=''SELECT " & Item_name(X) & " FROM be2006 WHERE day =....."
在進行open之前先把sql值 show出來給自己看,確認內容到底有無改變

確認加出來的是否正確,是不是有正常的space連接,是否有單引號等等
msgbox "SQL=" & sql

在往下走
Rs.open SQl

就可以知道是sql字串問題還是rs.open問題
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/30 上午 11:02:00
謝謝大大,我已經知道查出問題了,也用Select Case的方法解決了,

現在最後我想把查出來的數值($x)利用mschart畫成趨勢圖,

我試了幾天,但是都不成功,後來在網路上查到一個範例,

嘗試修改,但也無法成功,你可以幫我看看嗎?

Private Sub sub_pic()
Dim Grp1 As Variant
Dim Idx As Long
Dim MaxCnt As Long

Grp1 = x

'把TextBox上的資料拆成陣列

MaxCnt = UBound(Grp1)
MaxCnt = MaxCnt + 1
'陣列是從 0 開始,因此資料筆數是Ubound + 1

MSChart1.ColumnCount = 1 '一組資料
MSChart1.RowCount = MaxCnt '設成最大筆數
'開始把每一組的資料輸入MSChart

'用For Each可以確保每筆資料都會被寫入
Idx = 0
MSChart1.Column = 1
For Each Dat In Grp1
Idx = Idx + 1
MSChart1.Row = Idx
MSChart1.Data = Dat
Next

End Sub

Select Case Combo1.Text
    Case "溫度1"
     x = "temper1"
    Case "溫度2"
     x = "temper2"
    Case "濕度"
     x = "humidity"
    Case "照度"
     x = "illumin"
End Select
rs.Open "SELECT posttime," & x & " FROM be2006 WHERE day = .....

>如果發生類似莫名的問題,換做是我我會如此測試
>在每次改變 item_name(x)值時
>
>Dim Sql as string
>進行字串相加
>
>Sql=''''SELECT ' & Item_name(X) & ' FROM be2006 WHERE day =.....'
>在進行open之前先把sql值 show出來給自己看,確認內容到底有無改變
>
>確認加出來的是否正確,是不是有正常的space連接,是否有單引號等等
>msgbox 'SQL=' & sql
>
>在往下走
>Rs.open SQl
>
>就可以知道是sql字串問題還是rs.open問題
作者 : loulo(小樓)討論區板主 Visual Basic曠世奇才貼文超過1000則人氣指數超過10000點
[ 貼文 1817 | 人氣 11470 | 評價 8620 | 評價/貼文 4.74 | 送出評價 38 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/30 下午 02:38:22
Sorry ! mschart我不懂,幫不了你囉.....
作者 : johnpage(阿璋) 貼文超過500則
[ 貼文 519 | 人氣 4090 | 評價 1130 | 評價/貼文 2.18 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/3/31 上午 10:59:48
給你一個關鍵點
day = '2006-03-07'
如果解開就可以跑
PS:
不同欄位屬性 會導致判斷式不同
不是每個等於都是用"="表示
..........剩下留給你成長
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/4/5 下午 02:48:59
回大大:

你的意思我不太懂耶!現在我的查詢是沒問題了,

可以顯示在list上,但我現在想進一步用mschart元件來做圖形顯示,

這根解開"2006-03-07"有什麼關係呢?

可以明示一下嗎?因為小弟實在不太懂大大的意思!!

>給你一個關鍵點
>day = ''2006-03-07''
>如果解開就可以跑
>PS:
>不同欄位屬性 會導致判斷式不同
>不是每個等於都是用'='表示
>..........剩下留給你成長
作者 : avenwen(穩ㄝ)
[ 貼文 30 | 人氣 2563 | 評價 40 | 評價/貼文 1.33 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/4/5 下午 06:19:54
請您試試我的寫法吧....

rs.Open "select temper1, temper2, humidity, illumin, day where day = '" & DateSerial( Val(combo2.Text), Val(combo3.Text), Val(combo4.Text) ) & "'", conn, adOpenStatic, adLockOptimistic
作者 : pc027923(翰)
[ 貼文 18 | 人氣 2090 | 評價 0 | 評價/貼文 0 | 送出評價 0 次 ] 
[ 給個讚 ]  [ 給個讚 ]  [ 回應本文 ]  [ 發表新文 ]  [ 回上頁 ] [ 回討論區列表 ] [ 回知識入口 ]
2006/4/16 下午 03:48:39
大大:

謝謝你的回答,但是我試了你的寫法會出現錯誤,

我還是用我原來的寫法就可以了,

只是我現在想要的是,可以把查詢出來的x值畫到mschart物件上,

這不之大大知道如何寫嗎?

Select Case Combo1.Text
    Case "溫度1"
     x = "temper1"
    Case "溫度2"
     x = "temper2"
    Case "濕度"
     x = "humidity"
    Case "照度"
     x = "illumin"
End Select

rs.Open "SELECT posttime," & x & " FROM be2006 WHERE day = ' " & Combo2.Text & "-" & Combo3.Text & "-" & Combo4.Text & " '", conn

>請您試試我的寫法吧....
>
>rs.Open 'select temper1, temper2, humidity, illumin, day where day = ''' & DateSerial( Val(combo2.Text), Val(combo3.Text), Val(combo4.Text) ) & ''', conn, adOpenStatic, adLockOptimistic
 板主 : 小樓
 > Visual Basic 6.0/VBA - 討論區
 - 最近熱門問答精華集
 - 全部歷史問答精華集
 - Visual Basic 6.0/VBA - 知識庫
  ■ 全站最新Post列表
  ■ 我的文章收藏
  ■ 我最愛的作者
  ■ 全站文章收藏排行榜
  ■ 全站最愛作者排行榜
  ■  月熱門主題
  ■  季熱門主題
  ■  熱門主題Top 20
  ■  本區Post排行榜
  ■  本區評價排行榜
  ■  全站專家名人榜
  ■  全站Post排行榜
  ■  全站評價排行榜
  ■  全站人氣排行榜
 請輸入關鍵字 
  開始搜尋
 
Top 10
評價排行
Visual Basic 6.0/VBA
1 阿戊 10670 
2 小樓 8650 
3 Jones 5270 
4 水瓶天賞 2340 
5 joe 2230 
6 史努比 1950 
7 阿呆紅 1440 
8 tt's 1250 
9 青衫 1150 
10 羅啟章 1020 
Visual Basic 6.0/VBA
  專家等級 評價  
  一代宗師 10000  
  曠世奇才 5000  
  頂尖高手 3000  
  卓越專家 1500  
  優秀好手 750  
Microsoft Internet Explorer 6.0. Screen 1024x768 pixel. High Color (16 bit).
2000-2019 程式設計俱樂部 http://www.programmer-club.com.tw/
0.203125