1、求vb.net訪問SQL資料庫的代碼
tringstr="DataSource=.;InitialCatalog=user;User Id=sa;Pwd=";SqlConnectionconn=newSqlConnection(str);
conn.Open();
Stringsql="selectcount(*)from info wherename='"+textbox1.Text+"'andpass='"+textbox2+"'";
SqlCommandcmd=newSqlCommand(sql,conn);
if((int)cmd.ExcuteScalr()>0) '用於執行查詢語句,並返回結集果中的第一條記錄的第一個欄位的值。該方法的適合有一個結果的查詢,例如使用Sum,Avg,Max及Min等函數的SQL語句。
lable1.Text="成功登陸";
2、擷取DataGridView中選中行的某個欄位的vb.net代碼
rows=dgvUser.CurrentCellAddress.Y.ToString'獲得選中行的索引值
enUser.UserID=dgvUser.Rows(rows).Cells(0).Value'選中行的第一個欄位
3、擷取dataTable中第一行的第二個欄位
myDT.Rows(0).Item(2)=enUser.UserPwd
4、更新有主鍵的表
5、更新沒有主鍵的表
Dim strSqlAs String ="updateT_BasicDataSet set rate='" &enBaseDataSet.Rate&"',tmpRate='" &enBaseDataSet.tmpRate&"',increaseTime='" &
enBaseDataSet.IncreaseTime&"',lastTime='" & enBaseDataSet.LastTime
&"',prepareTime='" & enBaseDataSet.prepareTime &"',lastMoney='" &
enBaseDataSet.lastMoney& "'"
6、ExecuteNonQuery對串連執行Transact-SQL語句並返回受
影響的行數
Dim cmd AsSqlCommand = NewSqlCommand(strSql,conn)
conn.Open()
Ifcmd.ExecuteNonQuery> 0 Then 'ExecuteNonQuery對串連執行Transact-SQL語句並返回受影響的行數
Return "修改成功"
EndIf
7、匯出Excel,注意不要有空行,否則有錯誤出現
8、Vb.Net中,擷取dataGridView中某行某列的值
enLine.CardNo =dgvShowData(j,i).Value.ToString() 第i行,第j列的資料。
enLine.CardNo =dgvShowData.Rows(i).Cells(j).Value
9、Vb.net中,刪除dgv控制項中的指定記錄
'在控制項上刪除特定行
MsgBox("登入時間不足5分鐘,不收任何費用")
dgvShowData.Rows.RemoveAt(dgvShowData.CurrentRow.Index)
10、vb.net中,刪除dgv控制項中所有的記錄
MsgBox("下機成功!")
dgvShowData.DataSource ="null"
11、 然後在刪除指定資料行:
1. '刪除datagridview中的資料行
2. 'DGVuser.Rows.Remove(DGVuser.CurrentRow) 也可
3. DGVuser.Rows.RemoveAt(DGVuser.CurrentRow.Index)</span>
12、 Fromat()函數的運用
http://www.lob.cn/jq/kfjq/572.shtml
http://www.doc88.com/p-21781707477.html
13、把資料庫中Time類型的資料轉換成string
DimlogTime As TimeSpan
logTime = myDT.Rows(0).Item(8)
enCardNo1.OnLineTime= Convert.ToString(logTime)
14、日期時間擷取用Now和Today與TimeOfToday的區別
登陸時的時間間隔,如果用時間擷取通過NOW來擷取,沒有什麼障礙,計算時直接相減無障礙(儘管跨事件);
而我採用的是Today來擷取日期,TimeOfToday來擷取時間,採用這種方式的話擷取間隔時間時,我們無法在下機事件中,減去在上機事件中的上機變數;變數在下機事件中顯示不存在,此種情況我就在網上查資料,上面說可以採用全域變數來解決。然後我就是這去做,完全可以。現在我又學會了方法。
代碼:
上機
'全域變數,為的是在下機的時候用
Public Shared loginDate As Date
Public Shared loginTime As Date
Private Sub btnOnline_Click(senderAsObject, e As EventArgs) Handles btnOnline.Click
Dim enLine AsNew Entity.line
DimresultTable As DataTable
Dim lineFac AsNew Facade.LineFac
IftxtCardNo.Text = "" Then
MsgBox("請輸入卡號!")
Exit Sub
End If
IftxtStuNo.Text = "" Then
MsgBox("請輸入學號!")
Exit Sub
End If
loginDate =Today
loginTime =TimeOfDay
txtOnlineDate.Text = loginDate
txtOnlineTime.Text = loginTime
enLine.CardNo= txtCardNo.Text
enLine.StuNO =txtStuNo.Text
enLine.CardType = cmbCardType.Text
enLine.OnLineDate = txtOnlineDate.Text
enLine.OnLineTime = txtOnlineTime.Text
Try
resultTable =lineFac.StuLoginSystemFac(enLine)
If resultTable.Rows.Count > 0Then
txtAcademy.Text =resultTable.Rows(0).Item(4)
txtName.Text =resultTable.Rows(0).Item(2)
txtSex.Text =resultTable.Rows(0).Item(3)
txtLastMoney.Text =resultTable.Rows(0).Item(8)
If CType(txtLastMoney.Text,Single) < 0.5 Then
MsgBox("金額不足0.5元,請儲值上機!")
Exit Sub
End If
End If
Catch ex AsException
MsgBox(ex.Message)
Exit Sub
EndTry
End Sub
下機
Private Sub btnOffline_Click(sender As Object,e AsEventArgs) Handles btnOffline.Click
DimConsumeStanderFac As NewFacade.BaseDataSetFac
DimenConsumeStander As NewEntity.BaseDataSet
DimoffLineDate As Date
DimoffLineTime As Date
Dim lineTimeAs Long
'常用使用者
Dim rate AsString
'臨時使用者
Dim temRate AsString
'返回計算標準
enConsumeStander =ConsumeStanderFac.CountConsumeStanderFac()
IfcmbCardType.Text = "固定使用者"Then
rate = enConsumeStander.Rate
Else
If cmbCardType.Text ="臨時使用者" Then
temRate =enConsumeStander.tmpRate
End If
End If
offLineDate =Today
offLineTime=TimeOfDay
txtOffLineDate.Text = offLineDate
txtOfflineTime.Text = offLineTime
lineTime =DateDiff(DateInterval.Minute,loginTime, offLineTime)
txtConsumeTime.Text =lineTime.ToString
End Sub
隨著系統的進行,待續。。。。