vb資料庫顯示
Ⅰ vb6.0如何顯示資料庫中的數據
這個是access+datagrid顯示的
沒問題
其他資料庫也很類似
我正在用這個
你試試
'-------define
hong------------
Dim
ConStr
As
String
Dim
cn
As
ADODB.
Connection
Dim
rs
As
ADODB.Recordset
Dim
statestring
As
String
'------------------------connect-database-----------
Set
cn
=
New
ADODB.Connection
Set
rs
=
New
ADODB.Recordset
'--------------------connect
the
database--------------
ConStr
=
"Provider=Microsoft.Jet.OLEDB.4.0;"
&
"Data
Source="
&
App.Path
&
"\base\tmsdata.mdb"
'===================你的資料庫位置和名稱
cn.Open
ConStr
cn.CursorLocation
=
adUseClient
DataGrid1.Refresh
Select
Case
cn.State
Case
adStateClose
statestring
=
"adStateClosed"
Case
adStateOpen
statestring
=
"adStateOpen"
End
Select
'顯示連接的狀態
If
statestring
=
"adStateClosed"
Then
MsgBox
"連接失敗",
,
statestring
Else
End
If
'----------open
the
table------------------
rs.Open
"Select
用戶名
from
表名",
cn,
1,
3
'=========寫成你的表名
Set
DataGrid1.DataSource
=
rs
'show
on
the
table
Ⅱ vb與資料庫連接及顯示
'*************以下是窗體代碼************
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim sq As String
Private Sub Command1_Click()
On Error Resume Next
Dim Fliv As ListItem
For i = ListView1.ListItems.Count To 1 Step -1 '每次查詢之前先刪除全部內容
ListView1.ListItems.Remove (i)
Next i
cn.Open "provider=Microsoft.jet.OLEDB.4.0;data source=" & App.Path & "\Data.mdb"
sq = "select * from 基本情況 order by 學生編號"
rs.Open sq, cn, adOpenKeyset, adLockOptimistic
For i = 1 To rs.RecordCount
Set Fliv = ListView1.ListItems.Add()
Fliv.Text = rs.Fields("學生編號")
Fliv.SubItems(1) = rs.Fields("姓名")
Fliv.SubItems(2) = rs.Fields("性別")
Fliv.SubItems(3) = rs.Fields("民族")
Fliv.SubItems(4) = rs.Fields("年齡")
Fliv.SubItems(5) = rs.Fields("生源地")
Fliv.SubItems(6) = rs.Fields("政治面貌")
Fliv.SubItems(7) = rs.Fields("照片")
Fliv.SubItems(8) = rs.Fields("備注")
rs.MoveNext
Next i
MsgBox "查詢完成", vbInformation, "查詢"
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Private Sub Form_Load()
單列表表頭 '載入表格的標題頭
End Sub
'*************以下是模塊代碼***************
Sub 單列表表頭()
Dim FimgX As ListImage
Form1.ListView1.ColumnHeaders.Clear '清除列標題
Form1.ListView1.ListItems.Clear '清除行數據
Form1.ListView1.View = lvwReport '視圖模式為:報表視圖
Form1.ListView1.FullRowSelect = True '整行選擇
Form1.ListView1.MultiSelect = True '多行選擇
Form1.ListView1.GridLines = True '顯示網格
Form1.ListView1.LabelEdit = lvwManual '禁止編輯第一列
Form1.ListView1.ColumnHeaders.Add 1, , "學生編號", 1500
Form1.ListView1.ColumnHeaders.Add 2, , "姓名", 1100, lvwColumnCenter
Form1.ListView1.ColumnHeaders.Add 3, , "性別", 1000, lvwColumnCenter
Form1.ListView1.ColumnHeaders.Add 4, , "民族", 1000, lvwColumnCenter
Form1.ListView1.ColumnHeaders.Add 5, , "年領", 1000, lvwColumnCenter
Form1.ListView1.ColumnHeaders.Add 6, , "生源地", 1500, lvwColumnCenter
Form1.ListView1.ColumnHeaders.Add 7, , "政治面貌", 1000, lvwColumnCenter
Form1.ListView1.ColumnHeaders.Add 8, , "照片", 1000, lvwColumnCenter
Form1.ListView1.ColumnHeaders.Add 9, , "備注", 1200, lvwColumnCenter '此列隱藏
Set FimgX = Form1.ImageList1.ListImages.Add(, , LoadPicture(App.Path & "/1×22.bmp"))
Set FimgX = Form1.ImageList2.ListImages.Add(, , LoadPicture(App.Path & "/1×22.bmp"))
'若要將 ImageList 控制項和 ListView 控制項一起使用,必須將 Icons 和 SmallIcons 屬性與特定的 ImageList 控制項關聯。
Form1.ListView1.Icons = Form1.ImageList1
Form1.ListView1.SmallIcons = Form1.ImageList2
End Sub
'注意:運行之前先做一個1*22像素的圖片,是為了增加表格行的高度。
Ⅲ 如何在vb程序中查找資料庫信息並顯示
要查找資料庫信息,關鍵是要解決鏈接資料庫的問題,下面簡述Vb如何sql資料庫:
有兩種方法可以實現,一種是通過ODBC數據源的配置進行連接,一種是通過純代碼編輯進行連接,下面我們就詳細介紹一下這兩種連接方法。
ODBC數據源VB連接SQL資料庫
一、配置ODBC數據源
1、在控制面板中,雙擊管理工具,然後打開ODBC數據源管理器。
2、在「系統DSN」選項卡中,單擊「添加」按鈕,打開「創建新數據源」對話框,在「名稱」列表框中選擇「SQL Server」。選好單擊完成
3、在打開「建立新的數據源到SQL Server」對話框,在「名稱」文本框輸入新數據源的名稱,描述數據源按你理解的方式來寫(隨意)。「伺服器」就選擇你要連接到的伺服器。
4、選擇使用用戶輸入登錄的ID和密碼的SQL 驗證。選連接SQL默認設置
5、再下一步下一步,完成。測試數據源看連接是否成功就行了。成功後按確定。
二、VB中設置連接
1、添加部件Mircrosoft ADO Data Control 6.0(OLEDB),把部件拖到窗體。
2、對ADO部件點右鍵選屬性,選擇使用連接字元串,按生成。
3、選擇Mircosoft OLE DB Providar for SQL Server按下一步
4、
1)輸入伺服器名稱
2)使用指定的伺服器信息
3)在伺服器上選擇資料庫
這時就選擇你在SQL Server建好的資料庫就行了
5、測試連接可以看到連接是否成功!
通過代碼VB連接SQL資料庫
Public conn As New ADODB.Connection
Public rs As New ADODB.Recordset
Public addFlag As Boolean
Public Function OpenCn(ByVal Cip As String) As Boolean
Dim mag As String
On Error GoTo strerrmag
Set conn = New ADODB.Connection
conn.ConnectionTimeout = 25
conn.Provider = "sqloledb"
conn.Properties("data source").Value = Cip '伺服器的名字
conn.Properties("initial catalog").Value = "zqoa" '庫名
'conn.Properties("integrated security").Value = "SSPI" '登陸類型
conn.Properties("user id").Value = "sa"
conn.Properties("password").Value = "sa"
conn.Open
OpenCn = True
addFlag = True
Exit Function
strerrmag:
mag = "Data can't connect"
Call MsgBox(mag, vbOKOnly, "Error:Data connect")
addFlag = False
Exit Function
End Function
Public Sub cloCn()
On Error Resume Next
If conn.State <> adStateClosed Then conn.Close
Set conn = Nothing
End Sub
Public Function openRs(ByVal strsql As String) As Boolean '連接資料庫記錄集
Dim mag As String
Dim rpy As Boolean
On Error GoTo strerrmag
Set rs = New ADODB.Recordset
If addFlag = False Then rpy = True
With rs
.ActiveConnection = conn
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open strsql
End With
addFlag = True
openRs = True
End
'Exit Function
strerrmag:
mag = "data not connect"
Call MsgBox(mag, vbOKOnly, "error:connect")
openRs = False
End
'Exit Function
End Function
Public Sub cloRs()
On Error Resume Next
If rs.State <> adStateClosed Then rs.Clone
Set rs = Nothing
End Sub
Ⅳ VB顯示資料庫內容
您好,我來幫你搞定:
1 新建工程;在窗體上加入一個按鈕command1,一個文本框text1,
2 添加引用;工程-引用-Microsoft ActiveX Data Objects 2.7 Library;
3 將工程保存在d:\MY_project文件夾
4 我一看就知道你的資料庫是access資料庫,哈哈。
代碼如下:
private sub Form_Load()
on error goto errmsg '遇到錯誤,轉到errmsg
dim MyConStr as string '連資料庫字元串
dim sqlstr as string '查詢語句
dim a as string '對應表中的欄位a b c
dim b as string
dim c as string
dim conn2 as New ADODB.connection 』連接對象
MyConStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db.mdb"
conn2.open MyConStr '建立資料庫連接
dim rs as New ADODB.Recordset 』創建數據集對象
sqlstr="select top 1 * from MyTable order by a desc" '選出最大編號的記錄
rs.open sqlstr,conn2,1,1 '讀取數據到記錄集
』假設MyTable這張表裡有3個欄位a,b,c ,其中a就是那個自動編號
Do while Not rs.Eof
a = RTrim(LTrim(rs("a")))+"|" '加上|方便輸出有分隔
b = RTrim(LTrim(rs("b")))+"|"
c = RTrim(LTrim(rs("c")))
text1.text=a+b+c '將記錄顯示在文本框內,每個欄位都有|分隔
rs.move next
Loop
rs.close
set rs=nothing
set conn2=nothing
errmsg:
if err.number<>0 then
MsgBox CStr(Err.Number) + CStr(Err.Description), vbExclamation, "錯誤!"
exit sub
end if
end sub
************************** 祝你成功喔!***************************
PS:「Provider=Microsoft.Jet.OLEDB.4.0;Data Source="你的mdb資料庫全路徑"
上面那句話里的中文 要填寫上你自己的實際的內容比如(d:\data\mydata.mdb)。
還有就是我那個"select top 1 * from MyTable order by a desc" MyTable 以及裡面的欄位 都要填寫自己的內容喔!
Ⅳ VB如何實現查詢資料庫並顯示出來
可以快速導出使用excel 就有該功能
PublicFunctionExportToExcel(ByValstrOpenAsString,TitleAsString,diAsString,conAsADODB.Connection)
'*********************************************************
'*名稱:ExporToExcel
'*功能:導出數據到EXCEL'*用法:ExporToExcel(strOpen查詢字元串,titile
'*excel標題,di保存路徑,con資料庫連接地址)
'*********************************************************
lok:OnErrorGoToer
Screen.MousePointer=11
DimRs_DataAsNewADODB.Recordset
DimIrowcountAsLong
DimIcolcountAsLong
DimXlAppAsNewExcel.Application
DimxlbookAsExcel.Workbook
DimxlSheetAsExcel.Worksheet
DimxlQueryAsExcel.QueryTable
WithRs_Data
If.State=adStateOpenThen
.Close
EndIf
.ActiveConnection=con
.CursorLocation=adUseClient
.CursorType=adOpenStatic
.LockType=adLockReadOnly
.Source=strOpen
DoEvents
'Debug.PrintstrOpen
.Open
EndWith
Debug.PrintstrOpen
'SetRs_Data=Open_rst_from_str(strOpen)
WithRs_Data
If.RecordCount<1Then
MsgBox("沒有記錄!")
Screen.MousePointer=0
ExitFunction
EndIf
'記錄總數
Irowcount=.RecordCount
'欄位總數
Icolcount=.Fields.Count
EndWith
SetXlApp=CreateObject("Excel.Application")
Setxlbook=Nothing
SetxlSheet=Nothing
Setxlbook=XlApp.Workbooks().Add
SetxlSheet=xlbook.Worksheets("sheet1")
'添加查詢語句,導入EXCEL數據
SetxlQuery=xlSheet.QueryTables.Add(Rs_Data,xlSheet.Range("a1"))
WithxlQuery
.FieldNames=True
.RowNumbers=False
.FillAdjacentFormulas=False
.PreserveFormatting=True
.RefreshOnFileOpen=False
.BackgroundQuery=True
.RefreshStyle=xlInsertDeleteCells
.SavePassword=True
.SaveData=True
.AdjustColumnWidth=True
.RefreshPeriod=0
.PreserveColumnInfo=True
EndWith
xlQuery.FieldNames=True'顯示欄位名
xlQuery.Refresh
DimiAsInteger,ZdAsString
WithxlSheet
Fori=1To6
Zd=.Range(.Cells(1,1),.Cells(1,Icolcount)).item(1,i)
'.Range(.Cells(1,1),.Cells(1,Icolcount)).Item(1,i)=Lm_YwToZw(Zd)
Next
.Range(.Cells(1,1),.Cells(1,Icolcount)).Font.name="黑體"
'設標題為黑體字
'.Range(.Cells(1,1),.Cells(1,Icolcount)).Font.Bold=True
'標題字體加粗
.Range(.Cells(1,1),.Cells(Irowcount+1,Icolcount)).Borders.LineStyle=xlContinuous
'.Range(.Cells(Irowcount+2,Icolcount)).Text=Zje
'設表格邊框樣式
EndWith
XlApp.Visible=True
XlApp.Application.Visible=True
'xlBook.SaveAsdi
SetXlApp=Nothing'"交還控制給Excel
Setxlbook=Nothing
SetxlSheet=Nothing
Screen.MousePointer=0
ExitFunction
er:
'Dispose_Err
MsgBoxerr.Description&"從新導報表,請等待!"
GoTolok:
EndFunction
使用這個模塊就可以,你可以看看引用的函數即可
Ⅵ vb中資料庫顯示問題
右鍵表格→檢索欄位,如果還有「最後剩餘」,那麼就是更新的代碼那裡沒有更新這個欄位,如果沒有「最後剩餘」,那麼就是這個欄位已被你刪除,需到資料庫添加這個欄位,然後添加對應代碼
Ⅶ 如何使資料庫的內容在vb中顯示
大致上有兩者方法,一是用控制項,VB自帶的ADODC+DATAGRID,設置DataGrid.DataSource為ADODC即可
二是用代碼連接資料庫,通常用 ADO+DataGrid。引用ADO庫,定義Connection對象打開資料庫,Recordset對象執行查詢,並將數據顯示在DataGrid里。
Ⅷ vb中listview如何顯示資料庫內容
第一步:添加列頭
可在form_load里邊添加,如下:
'初始化
ListView1.FullRowSelect
=
True
'(允許整行選擇)
listview1.gridlines=true
'(顯示網格)
listview1.checkboxs=true
'顯示checkboxs框
listview1.view=3
'以報表形式顯示
ListView1.ColumnHeaders.Clear
ListView1.ColumnHeaders.Add
1,
,
"姓名",
1000
ListView1.ColumnHeaders.Add
2,
,
"性別",
500
ListView1.ColumnHeaders.Add
3,
,
"職稱",
1500
ListView1.ColumnHeaders.Add
4,
,
"電話",
1000
第二步,添加數據
Dim
itmX
As
ListItem
Set
itmX
=
lvw.ListItems.Add(參數,參數,參數,……)
'這些參數都可以為空,具體你可以看看msdn
itmX.text="李四"
itmX.SubItems(1)
=
"雄性"
itmX.SubItems(2)
=
"大將軍"
itmX.SubItems(3)
=
"10086"
第三步,取得行數據
Private
Sub
ListView1_ItemClick(ByVal
Item
As
MSComctlLib.ListItem)
Text1
=
Item.Text
Text2
=
Item.SubItems(1)
Text3
=
Item.SubItems(2)
Text4
=
Item.SubItems(3)
End
Sub
試一試就能知道怎麼用了,快去試試吧
Ⅸ 如何用VB顯示資料庫的內容
Dim
Dname
As
String
Dname
=
App.Path
If
Right(Dname,
1)
<>
"\"
Then
Dname
=
Dname
&
"\"
Dname
=
Dname
&
"xx.mdb"
'xx.mdb改成資料庫名
Cnstr
=
"Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="
&
Dname
&
"
;Jet
OLEDB:Database
"
Adodc1.ConnectionString
=
Cnstr
Adodc1.CursorLocation
=
adUseClient
Adodc1.CommandType
=
adCmdText
Adodc1.RecordSource
=
"select
*
from
表名"
Set
DataGrid1.DataSource
=
Adodc1
Adodc1.Refresh
'添加Adodc1控制項
'添加datagrid控制項
Ⅹ vb資料庫顯示問題
如果你是新建數據工程,VB會自行載入ADO數據對象。如果你是新建EXE工程,則應由工程菜單選引用選項,在其窗口選MICROSOFT ACTIVEX DATA OBJECTS 2.0 LIBRARY加鉤即可。不過建議按新建數據工程簡單。
2)我用以下代碼調試你的主要代碼,僅按新建EXE工程,則應由工程菜單選引用選項,在其窗口選MICROSOFT ACTIVEX DATA OBJECTS 2.0 LIBRARY加鉤,並添加DATAGRID部件,無問題,在VB6調試:
Private Sub Form_Load()
Dim strConn As String
Dim pubConn As New ADODB.Connection
Dim rsTable As New ADODB.Recordset
Dim strSQL As String
'strConn = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;User ID=sa;Initial Catalog=kaoqing;Data Source=JANSON"
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\hxrkgl.mdb;Persist Security Info=False"
pubConn.Open strConn
rsTable.CursorLocation = adUseClient
strSQL = "select * from mdlk_sj"
'strSQL = "select * from attdcardrec"
rsTable.Open strSQL, pubConn, adOpenDynamic, adLockOptimistic
Set DataGrid1.DataSource = rsTable
End Sub