FirebirdSQL/5/5
出自VFP Wiki
VB Code
以下程式來自於VB Programming with Firebird.
- 取得所有資料
FB-Connecting.vbp Private sub Command1_Click() Dim cn As New ADODB.Connection Dim rs As New Recordset Dim sql As String cn.ConnectionString = "Provider=ZStyle IBOLE Provider; Data Source = "_&"c:\ProgramFiles\Firebird\Firebird_1_5\Samples\Httplogs.gdb;UID=sysdba;password= pwd" cn.Open sql= "Select* From States" Set rs = cn.Execute(sql) DoWhile Not rs.EOF List1.AddItemrs(0) & vbTab & rs(1) rs.MoveNext Loop rs.Close cn.Close End Sub
- 更新單筆資料
Text1 = txtEStateCode Text2 = txtEStateName Command1 = cmdEdit Command2 = cmdAdd Private Sub cmdEdit_Click() Dim cn1 As New ADODB.Connection Dim sql As String If txtEStateCode = "" Then MsgBox "Please enter a State Code!": _ txtEStateCode.SetFocus: Exit Sub cn1.ConnectionString = "Provider=ZStyle IBOLE Provider; Data Source=" _ & "c:\Program Files\Firebird\Firebird_1_5\Samples\Httplogs.gdb; UID=sysdba; password=pwd" cn1.Open sql = "Update States Set State_Name='" & txtEStateName & "'" & _ & " Where State_Code='" & UCase(txtEStateCode) & "'" cn1.Execute sql cn1.Close txtEStateCode = "" txtEStateName = "" End Sub </code> *新增單筆記錄 <code> Private Sub cmdAdd_Click() Dim cn As New ADODB.Connection Dim sql As String If txtEStateCode = "" Then MsgBox "Please enter a State Code!": _ txtEStateCode.SetFocus: Exit Sub cn.ConnectionString = "Provider=ZStyle IBOLE Provider; Data Source=" _ & "c:\Program Files\Firebird\Firebird_1_5\Samples\Httplogs.gdb; UID=sysdba; password=pwd" cn.Open sql = "Insert Into States (State_Code, State_Name) Values" _ & "('" & UCase(txtEStateCode) & "','" & txtEStateName & "')" cn.Execute sql cn.Close txtEStateCode = "" txtEStateName = "" End Sub
- 新增多筆記錄
Private Sub cmdAdd_Click() Dim cn As New ADODB.Connection Dim sql As String Dim i, rowCount As Integer Dim lineItem As String Dim itemArray cn.ConnectionString = "Provider=ZStyle IBOLE Provider; Data Source=" _ & "c:\Program Files\Firebird\Firebird_1_5\Samples\Httplogs.gdb; UID=sysdba; password=pwd" cn.Open 'Add items to database rowCount= List1.ListCount 'getthe number of rows in the list box Do Until i = rowCount lineItem = List1.List(i) itemArray = Split(lineItem, vbTab) sql = "Insert Into States (State_Code, State_Name) Values" _ & "('" & UCase(itemArray(0)) & "','" & itemArray(1) & "')" i = i + 1 cn.Execute sql Loop cn.Close List1.Clear End Sub Sub Private Sub Form_Load() List1.AddItem "CO" & vbTab & "Colorado" List1.AddItem "CT" & vbTab & "Connecticut" List1.AddItem "MN" & vbTab & "New Mexico" List1.AddItem "WY" & vbTab & "Wyoming" End Sub
- 使用Stored Procedure
/*以下為FirebirdSQL 的Creating a Stored Procedure*/ Create Procedure SP_GETLIST BEGIN SELECT State_Code, State_Name FROM States Where State_Code = 'VA' INTO :State_Code, :State_Name; SUSPEND; END '以下為VB Code Private Sub Command1_Click() Dim cn As New ADODB.Connection Dim cmd As ADODB.Command cn.ConnectionString = "Provider=ZStyle IBOLE Provider; Data Source=" _ & "c:\Program Files\Firebird\Firebird_1_5\Samples\Httplogs.gdb; UID=sysdba; password=pwd" cn.Open Set cmd = New ADODB.Command cmd.ActiveConnection = cn cmd.CommandText = "SP_GETLIST" cmd.CommandType = adCmdStoredProc cmd.Execute Text1 = cmd.Parameters(0).Value Text2 = cmd.Parameters(1).Value cn.Close End Sub