| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2047 人关注过本帖
标题:公布一个数据库操作类
只看楼主 加入收藏
wasdyjyj
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2007-5-8
收藏
 问题点数:0 回复次数:2 
公布一个数据库操作类
Imports System
Imports System.Data
Imports System.Data.SqlClient
Public Class Excute
    Private Con As String = "Data Source=Server;Initial Catalog=Data;User ID=sa;pwd=123"
    Private adapter As New SqlDataAdapter
    Private reader As SqlDataReader
    Private Myconn As New SqlConnection(Con)
'定义接口,此接口只需传入SQL语句就可执行,返回一个Boolean型,可以进行insert、update、delete操作
    Public Function ExecuteNonQuery(ByVal SQLStr As String) As Boolean
        Myconn.Open()
        Try
            Dim cmd As New SqlCommand(SQLStr, Myconn)
            cmd.ExecuteNonQuery()
            Return True
        Catch ex As Exception
            Return False
        End Try
        Myconn.Close()
    End Function
'返回一个DataTable,即查询获得的表,直接用datagrid1.datasource就可以绑定了,只需要传入一个SQL查询语句
    Public Function GetTable(ByVal Selectstr As String) As DataTable
        Myconn.Open()
        Dim tb As DataTable = New DataTable
        Try
            Dim cmd As New SqlCommand(Selectstr, Myconn)
            reader = cmd.ExecuteReader
            tb = ReaderToTable(reader)  '生成Table
            Return tb
        Catch ex As Exception
            Return tb
        End Try
        Myconn.Close()
    End Function
    Private Function ReaderToTable(ByVal reader As SqlClient.SqlDataReader) As DataTable  
        Dim newTable As New DataTable()
        Dim col As DataColumn
        Dim row As DataRow
        Dim i As Integer
        For i = 0 To reader.FieldCount - 1
            col = New DataColumn()
            col.ColumnName = reader.GetName(i)
            col.DataType = reader.GetFieldType(i)

            newTable.Columns.Add(col)
        Next
        While reader.Read
            row = newTable.NewRow()
            For i = 0 To reader.FieldCount - 1
                row(i) = reader.Item(i)
            Next
            newTable.Rows.Add(row)
        End While
        Return newTable
    End Function
End Class

连接数据库的地方根据自己的服务器更改一下 我是连接SQL server2000的
已经通过编译,复制后新建一个类,然后全部粘贴,类名自己改,然后按Ctrl+Shift+B编译,保存后在你保存的文件夹下
bin文件里面有个Release文件,找到一个.dll的文件就是已经编译好的类..\bin\Release
新建一个应用程序,在资源管理器里面点右键选择添加引用,选择浏览,然后找到这个.dll文件就可以了,点确定
在程序里面引用后就不用imports了,直接实例化这个类 dim ca as new Excute.Excute就OK了(Excute是我自己取的类名,大家可以自己定义)
调用
dim dt as dataTable
dt=ca.getTable(sql查询语句)
DataGridView1.DataSource = dt
写得有点乱,希望能对大家有用

关于SQL语句也可以另外在建一个类进行封装,这样前面只需要传入参数就可以了,如果需要这方面的朋友可以Email我
我的Email:yj2002520@
搜索更多相关主题的帖子: 数据库 SQL Data Private Imports 
2008-04-03 13:40
vpzq
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2008-7-5
收藏
得分:0 
谢谢,我也有一个类似的!!!
2008-07-09 18:41
wanglirainy
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2007-6-6
收藏
得分:0 
我需要,我的郵箱是:wanglirainy@
非常感謝!
2008-08-15 10:52
快速回复:公布一个数据库操作类
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022418 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved