dataset 对象的关键是理解他的无连接模式、xml格式的数据。
还有灵活运用这几个对象.
sqlconnection
sqlcommand
sqldataAdapter
DataSet
dataTable
DataRowCollection
DataCoulmnCollection
练习的代码如下:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
Dim sqlconnection As New System.Data.SqlClient.SqlConnection
Dim sqldataset As New System.Data.DataSet '定义DataSet对象
sqlconnection.ConnectionString = "server=(local);uid=sa;pwd=tiantian;database=Achem56"
sqlconnection.Open()
Dim sqladaper As System.Data.SqlClient.SqlDataAdapter '定义DataAdapter对象
sqladaper = New System.Data.SqlClient.SqlDataAdapter("select * from user_service ", sqlconnection)
sqlconnection.Close()
sqladaper.Fill(sqldataset, "user_login") '填充数据
sqldataset.CaseSensitive = False
Dim sqltable As System.Data.DataTable, i As Int32, j As Int32
sqldataset.Tables("user_login").Select("id=5")
sqltable = sqldataset.Tables("user_login")
'移除dataset中的数据表
' sqldataset.Tables.Remove("user_login")
'判断sqltable中是否有错误
Response.Write("sqltable中是否有错误:" & sqltable.HasErrors & "<Br>")
'输出sqldataset中的表的个数
'sqltable的数据筛选主要用于汇总,需要用汇总函数
' sqltable.Compute("count(id)", "id>30")
'sqltable.Columns(4).Expression = "user_type *3 "
Try
' Response.Write("sqldataset中的表的个数:" & sqldataset.Tables.Count & "<br>")
'增加一个表到sqldataset
Response.Write("<table border='0' width='100%' ><tr align='center'>")
For i = 0 To sqltable.Columns.Count - 1 '循环写出数据字段的名称
sqltable.Columns(i).Caption = i
Response.Write("<td>" & sqltable.Columns(i).ColumnName & "</td>")
Next
Response.Write("</tr>")
'显示数据
For i = 0 To sqltable.Rows.Count - 1 '循环写出字段的内容
Response.Write("<tr align='center' >")
For j = 0 To sqltable.Columns.Count - 1
Response.Write("<td>" & sqltable.Rows(i).Item(j) & "</td>")
Next
Response.Write("</tr>")
Next
Response.Write("</table>")
Catch ex As Exception
Response.Write(ex.Message)
End Try
' Response.Write(sqltable.Columns.Count)
End Sub
还有灵活运用这几个对象.
sqlconnection
sqlcommand
sqldataAdapter
DataSet
dataTable
DataRowCollection
DataCoulmnCollection
练习的代码如下:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'在此处放置初始化页的用户代码
Dim sqlconnection As New System.Data.SqlClient.SqlConnection
Dim sqldataset As New System.Data.DataSet '定义DataSet对象
sqlconnection.ConnectionString = "server=(local);uid=sa;pwd=tiantian;database=Achem56"
sqlconnection.Open()
Dim sqladaper As System.Data.SqlClient.SqlDataAdapter '定义DataAdapter对象
sqladaper = New System.Data.SqlClient.SqlDataAdapter("select * from user_service ", sqlconnection)
sqlconnection.Close()
sqladaper.Fill(sqldataset, "user_login") '填充数据
sqldataset.CaseSensitive = False
Dim sqltable As System.Data.DataTable, i As Int32, j As Int32
sqldataset.Tables("user_login").Select("id=5")
sqltable = sqldataset.Tables("user_login")
'移除dataset中的数据表
' sqldataset.Tables.Remove("user_login")
'判断sqltable中是否有错误
Response.Write("sqltable中是否有错误:" & sqltable.HasErrors & "<Br>")
'输出sqldataset中的表的个数
'sqltable的数据筛选主要用于汇总,需要用汇总函数
' sqltable.Compute("count(id)", "id>30")
'sqltable.Columns(4).Expression = "user_type *3 "
Try
' Response.Write("sqldataset中的表的个数:" & sqldataset.Tables.Count & "<br>")
'增加一个表到sqldataset
Response.Write("<table border='0' width='100%' ><tr align='center'>")
For i = 0 To sqltable.Columns.Count - 1 '循环写出数据字段的名称
sqltable.Columns(i).Caption = i
Response.Write("<td>" & sqltable.Columns(i).ColumnName & "</td>")
Next
Response.Write("</tr>")
'显示数据
For i = 0 To sqltable.Rows.Count - 1 '循环写出字段的内容
Response.Write("<tr align='center' >")
For j = 0 To sqltable.Columns.Count - 1
Response.Write("<td>" & sqltable.Rows(i).Item(j) & "</td>")
Next
Response.Write("</tr>")
Next
Response.Write("</table>")
Catch ex As Exception
Response.Write(ex.Message)
End Try
' Response.Write(sqltable.Columns.Count)
End Sub