最近做了個(gè)課程設(shè)計(jì),學(xué)了下VB,作下總結(jié)吧。
做這個(gè)課程設(shè)計(jì)的過程中主要的難度是ACCESS數(shù)據(jù)庫編程,用MSFLEXGRID控件來顯示數(shù)據(jù)庫的數(shù)據(jù)
不得不說,做個(gè)小應(yīng)用軟件特別是數(shù)據(jù)庫相當(dāng)重要的,真要好好設(shè)計(jì)規(guī)劃下,由于我是第一次做一個(gè)小軟件,
很多東西都沒怎么考慮,搞了下需求分析,數(shù)據(jù)庫的設(shè)計(jì)也是胡來,整個(gè)開發(fā)文檔也沒寫好,很是粗糙,結(jié)果一個(gè)相當(dāng)簡易的東西,做了一個(gè)星期,不過從中也學(xué)到了很多東西。總結(jié)一下:
1.要分析清楚整個(gè)系統(tǒng)的運(yùn)作流程,設(shè)定各個(gè)部分是如何實(shí)現(xiàn),反正就先假想下。
2.數(shù)據(jù)庫的設(shè)計(jì)一定跟上面的分析符合,有利于編碼的實(shí)現(xiàn)
3.很多時(shí)候遇到問題自己要好好地思考一下,不要想一下或者遇到陌生的東西時(shí)就放棄思考,如果有自己的想法要去嘗試下,在課程設(shè)計(jì)中,要用到復(fù)制數(shù)據(jù)表,但不知怎么搞,到處去問也沒人幫忙,浪費(fèi)了一個(gè)晚上的時(shí)間,結(jié)果第二天清晨自己動(dòng)手就那個(gè)自然的想法試了下,就成功啦。
4.在這個(gè)課程設(shè)計(jì)中,我選了dao的方式,沒有采用ado似有點(diǎn)錯(cuò),因?yàn)閐ao很少人用似的,上網(wǎng)找資料時(shí)比較少,以后則定要考慮清楚這些方面。
5.vb6.0是個(gè)讓我覺得挺煩的東西,每次打開個(gè)工程那么多FORM就閃閃閃出來,不喜歡這點(diǎn),呵呵

DAO的連接方式

Dim db As Database
Dim rs As Recordset
Set db = OpenDatabase(App.Path + "\admin.mdb")
Set rs 
= db.OpenRecordset("select * from table where  "'")
復(fù)制數(shù)據(jù)表
其實(shí)也是很簡單的,復(fù)制的表和被復(fù)制的表是基于同個(gè)MDB文件的,
If myrs5.RecordCount >= 1 Then
    While myrs5.EOF 
= False
    myrs4.AddNew
    myrs4.Fields(
"Ãû³Æ1"= myrs5.Fields("Ãû³Æ")
    myrs4.Fields(
"µ¥¼Û1"= myrs5.Fields("µ¥¼Û")
    myrs4.Fields(
"ÊýÁ¿1"= myrs5.Fields("ÊýÁ¿")
    myrs4.Fields(
"ÂëÊý1"= myrs5.Fields("ÂëÊý")
    myrs4.Fields(
"½ð¶î1"= myrs5.Fields("½ð¶î")
    myrs4.Fields(
"ÊýÁ¿2"= 0
    myrs5.MoveNext
    myrs4.Update
    Wend
    End If
    myrs5.Close

combo控件,MSFLEXGRID控件的使用,數(shù)據(jù)庫數(shù)據(jù)顯示在MSFLEXGRID上
 If myrs3.RecordCount >= 1 Then
        While myrs3.EOF 
= False
        Combo1.AddItem (myrs3.Fields(
"Ãû³Æ1"))
        Combo2.AddItem (myrs3.Fields(
"ÂëÊý1"))
            MSFlexGrid1.Rows 
= MSFlexGrid1.Rows + 1
            MSFlexGrid1.Row 
= MSFlexGrid1.Rows - 1
            MSFlexGrid1.Col 
= 0
            MSFlexGrid1.Text 
= myrs3.Fields("Ãû³Æ1")
            MSFlexGrid1.Col 
= 1
            MSFlexGrid1.Text 
= myrs3.Fields("µ¥¼Û1")
            MSFlexGrid1.Col 
= 2
            MSFlexGrid1.Text 
= myrs3.Fields("ÊýÁ¿3")
            MSFlexGrid1.Col 
= 3
            MSFlexGrid1.Text 
= myrs3.Fields("ÂëÊý1")
            MSFlexGrid1.Col 
= 4
            MSFlexGrid1.Text 
= myrs3.Fields("½ð¶î1")
            myrs3.MoveNext
        Wend
        myrs3.Close
End If

將數(shù)據(jù)庫中的某個(gè)表的數(shù)據(jù)清空
Dim sstr As String
Dim db As Database
 Set db 
= OpenDatabase(App.Path + "\shoeee1.mdb")
sstr 
= "delete * from shoesell"
db.Execute (sstr)
db.Close

登錄框中核對(duì)用戶名的
 Set Myrs = Mydb.OpenRecordset(" select * from ¹table where username  ='" & Trim(txtUserName) & "'")

復(fù)制代碼過來有亂碼,,,,