Public myconn As New ADODB.Connection
成都創新互聯網站建設公司一直秉承“誠信做人,踏實做事”的原則,不欺瞞客戶,是我們最起碼的底線! 以服務為基礎,以質量求生存,以技術求發展,成交一個客戶多一個朋友!專注中小微企業官網定制,網站設計、成都網站制作,塑造企業網絡形象打造互聯網企業效應。
Public myrecord As New ADODB.Recordset
Public Sub main()
gdatabasepassword = 數據庫密碼
gdatabaseusrname = 數據庫用戶名
gdatabasename = 表名
gipstr = 服務器IP地址
connstring = "Provider=SQLOLEDB.1;Password=" gdatabasepassword ";Persist Security Info=True;User ID=" gdatabaseusrname ";Initial Catalog=" gdatabasename ";Data Source=" gipstr
Set myconn = New ADODB.Connection
myconn.ConnectionString = connstring
myconn.Open
至此數據庫就連接上了,可以訪問指定的數據表了
窗體文件里這樣寫
Private Sub Form_Load()
Dim mysql As String
'On Error GoTo errortrap2
connstring = "Provider=SQLOLEDB.1;Password=" gdatabasepassword ";Persist Security Info=True;User ID=" gdatabaseusrname ";Initial Catalog=" gdatabasename ";Data Source=" gipstr
'Debug.Print connstring
Set myconn = New ADODB.Connection
mysql = "select data , BedCode,CODE,PatientName,UpdateTime from MachineData "
'mysql = "select identitycard,sex from patient where name='" List1.Text "'"
myconn.ConnectionString = connstring
myconn.Open
Set myrecord = New ADODB.Recordset
'myrecord.Open "patient", myconn, adOpenDynamic, adLockReadOnly
myrecord.Open mysql, myconn, adOpenDynamic, adLockReadOnly
With myrecord
While Not .EOF()
List1.AddItem .Fields("CODE") "--" .Fields("BedCode") "--" .Fields("PatientName")
List2.AddItem .Fields("DATA")
List3.AddItem .Fields("UpdateTime")
.MoveNext
Wend
End With
GoTo normalend2:
errortrap2: MsgBox "嚴重錯誤!!!"
End
normalend2:
myrecord.Close
'''''''''''''''''''''''''''''''''
End Sub
1.首先啟動SQL,并把你要連接到VB的數據庫附加到SQL中(最好把數據庫放在C盤)
2.打開開始——設置——控制面板——管理工具——數據源ODBC
3.在ODBC中選系統DNS——添加——sqlserver——完成
4.在建立的新數據源到SQLserver對話框中,名稱自己寫一個如:cjgl。服務器選local
——下一步——密碼如果沒有可以不寫——下一步——選中更改默認數據庫為,單擊下拉列表,選擇你自己的數據庫——下一步——完成——測試數據源——成功后點確定——點擊上一個窗口的確定。這樣DNS就設置完了。
5.下面啟動VB,
在窗體中添加一個ADOdata 控件,右擊查看屬性頁面
在通用中——使用odbc數據源名稱——選擇你剛才設置的數據源名稱(cjgl)
在記錄源項——命令類型課根據自己的需要選擇,一般選2 ,——表或存儲過程名稱,選擇你要連接到VB中的一個表
這樣就差不多了,如果不會再找我
1、打開代碼窗口,添加引用:Imports System.Data.SqlClient。
2、輸入以下代碼:
“Public conn1? As SqlConnection = New SqlConnection _
("server=192.168.1.79; Initial Catalog= student; User ID= panqe;PWD=shentai768@")”,vb就已經成功連接sql數據庫了。
3、代碼詳解:聲明關鍵字Public(因為是全局變量,所以用Public 來聲明)。
4、連接參數。
5、如果SQL 數據庫就在本機,則用以下代碼連接:
("server=.; Integrated Security=False;Initial Catalog= student; User ID= panqe;PWD=shentai768@")。
6:如果代碼太長,影響可讀性,可以用空格加"_"后,回車換行。
類模塊程序有錯誤,加上下面兩句就行:
Public Sub openconn()
If sqlconn Is Nothing = True Then
Set sqlconn = New ADODB.Connection
Set rs = New ADODB.Recordset '=================
End If
If sqlconnstate 1 Then
sqlconn.Open sconn
End If
End Sub
Public Sub closeconn()
If sqlconn.State = 1 Then
sqlconn.Close
End If
End Sub
Public Function runselectsql(ByVal ssqlstring As String) As ADODB.Recordset
Me.openconn
rs.Open ssqlstring, sqlconn, adOpenStatic, adLockReadOnly '/*這里為出現錯誤91的地方*/
Set runselectsql = rs '=================
End Function
沒用過VB,不過可以參考下。
首先數據表wxl應該提前創建好,不論是在數據庫先創建,還是在VB中動態創建
數據表的字段是通過VB的MSFlexGrid上給出的字段,那么字段名和類型就可以作為存儲過程的參數。sqlserver中用動態SQL執行alter table wxl?add 列名來增加列,比如:
--這里只把字段名作為參數,還要自己修改為存儲過程
declare?@c1?varchar(10)
declare?@sql?varchar(100)
set?@c1='userName'
set?@sql='alter?table?student?add?'+@c1+'?varchar(10)'
exec(@sql)
go
select?*?from?student
你是哪種數據庫了。
如果是sql的話,sql本身有一個系統表,那個系統表里面記錄的就是用戶表的各種信息,包括表類型、列名稱,特別復雜,你慢慢研究研究。
如果是其他數據庫,沒有哪種系統表,或找不到那種系統表,可以用vb的錯誤機制。
就執行表查詢,如果查到了。就存在,沒查到,on error goto XXX,就沒查到。
理論上就是,不報錯,就存在,報錯就不存在。