Thông tin
  • Đánh dấu xác nhận câu hỏi đã được giải quyết để giúp diễn đàn nâng cao chất lượng [cách sử dụng]
  • Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết [nội qui]
  • Tìm kiếm trước khi đặt câu hỏi

Kết nối CSDL Access trong VB.Net..

Nơi trao đổi về các vấn đề trong lập trình Windows Forms, Console dùng cú pháp ngôn ngữ Visual Basic .NET và C#

Các điều hành viên: tungblt, vuathongtin

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi lungocqua » Thứ 6 29/10/2010 12:24 am

Xóa cái MsgBox(commandInsert.CommandText) đi là xong! :))
Ta đã trở lại và quên hết tất cả! :D
Hình đại diện của thành viên
lungocqua
Guru
Guru
 
Bài viết: 1225
Ngày tham gia: Thứ 3 18/08/2009 11:51 am
Đến từ: Phú Hữu - Nhơn Trạch - Đồng Nai
Đã cảm ơn: 0 lần
Được cảm ơn: 5 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 6 29/10/2010 12:31 am

bạn hay quá, cám ơn bạn nha, chuc bạn ngủ ngon :x , mai mình làm tiếp những phần còn lại có gì khó khăn mình hỏi bạn chỉ mình tip nha, cảm ơn thầy
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 6 29/10/2010 12:35 am

có một vấn đè mình muốn hỏi bạn mà k dám hỏi vì k thuôc chủ đề, mình hỏi đại bạn chỉ thì chỉ k chỉ cũng k sao. Mình muốn tạo textbox có chữ sẳn trong đó nhưng đã dc bôi xanh khi click chuột vào thì tự động biến mất k biết làm sao ?
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi lungocqua » Thứ 6 29/10/2010 12:39 am

Cuối tuần sẽ làm. Đang nghiên cứu! :D
Ta đã trở lại và quên hết tất cả! :D
Hình đại diện của thành viên
lungocqua
Guru
Guru
 
Bài viết: 1225
Ngày tham gia: Thứ 3 18/08/2009 11:51 am
Đến từ: Phú Hữu - Nhơn Trạch - Đồng Nai
Đã cảm ơn: 0 lần
Được cảm ơn: 5 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 6 29/10/2010 3:49 pm

Mã: Chọn tất cả
Imports System.Data.OleDb
Imports System.Data
Public Class FormDSHOCVIEN
    Dim con As OleDbConnection ' Cục bộ trong Form
    Dim ms As String

    Public Sub xem()
        Dim dt As New DataTable("HOCVIEN")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()

        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select * From HOCVIEN ORDER BY MAHV DESC"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        'dgvsv.DataSource = dt 'Load dữ liệu lên DataGridview



        'dt = data.ExecuteQuery("select MSSV,MA_P,HO,TEN, NAMSINH, CMND from SINHVIEN")
        dshocvien.DataSource = dt
        Fordgv()
    End Sub
    Private Sub FormDSHOCVIEN_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim str As String = "Provider= Microsoft.Jet.OLEDB.4.0;" _
                               & "Data Source = " & "data\database.mdb;"
        con = New OleDbConnection(str)
        con.Open()
        xem()
        btnxoa.Enabled = False
    End Sub

    Private Sub dshocvien_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dshocvien.CellContentClick
        If dshocvien.SelectedRows.Count > 0 Then
            ms = dshocvien.SelectedRows(0).Cells("MAHV").Value
            btnxoa.Enabled = True
        End If
    End Sub

    Private Sub btnxoa_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnxoa.Click
        If ms = "" Then
            MsgBox("Xóa không thành công", MsgBoxStyle.OkOnly, "Thông báo")
        Else
            If dshocvien.SelectedRows.Count > 0 Then

                If MsgBox("Bạn có chắc chắn muốn xóa không", MsgBoxStyle.YesNo, "Thông báo") = MsgBoxResult.Yes Then
                    Dim dt As New DataTable("HOCVIEN")
                    'Tạo bộ máy DataAdapter thực hiện command
                    Dim da As New OleDbDataAdapter()
                    'Tạo command để lấy dữ liệu ra ngoài
                    Dim commanddelete As New OleDbCommand()

                    commanddelete.Connection = con
                    commanddelete.CommandType = CommandType.Text
                    commanddelete.CommandText = "delete from HOCVIEN where MAHV='" + ms + "'"
                    ' da.SelectCommand = command ' gán command cho da
                    'da.Fill(dt)  'Nạp dữ liệu vào Table
                    'da.InsertCommand = commandInsert 'gán command
                    commanddelete.ExecuteNonQuery()
                    MsgBox("Xóa thành công", MsgBoxStyle.OkOnly, "Thông báo")
                    xem()
                End If
            End If
        End If
    End Sub
   
    Private Sub Fordgv()
        FormatDataGridView()

        'btnxem_Click(Me, Nothing)

        dshocvien.MultiSelect = True
        dshocvien.AllowUserToDeleteRows = False
        dshocvien.AllowUserToAddRows = False

        dshocvien.Columns(0).HeaderText = "Mã Học Viên"
        dshocvien.Columns(1).HeaderText = "Họ Tên "
        dshocvien.Columns(2).HeaderText = "Phái"
        dshocvien.Columns(3).HeaderText = "Ngày sinh"
        dshocvien.Columns(4).HeaderText = "Quê Quán"

        dshocvien.Columns(0).Visible = True

        ' Resize the DataGridView columns to fit the newly loaded content.
        dshocvien.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)
    End Sub
    Private Sub FormatDataGridView()
        With dshocvien
            ' Change the Border and Gridline Styles in the Windows Forms DataGridView Control
            .GridColor = Color.BlueViolet
            .RowHeadersVisible = False
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect
            .MultiSelect = False
   


            .AllowUserToAddRows = False
            .AllowUserToDeleteRows = False
            .BackgroundColor = Color.AliceBlue
            .ForeColor = Color.Green
            .AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple
        End With
   
        With dshocvien.ColumnHeadersDefaultCellStyle
            .BackColor = Color.Navy
            .ForeColor = Color.White
            .Font = New Font(dshocvien.Font, FontStyle.Bold)
        End With
    End Sub


    Protected Overrides Sub WndProc(ByRef m As Message)
        Const WM_SYSCOMMAND As Integer = &H112
        Const SC_CLOSE As Integer = &HF060

        If m.Msg = WM_SYSCOMMAND And m.WParam.ToInt32 = SC_CLOSE Then
            ' User clicked close button, do what you want here
            Return
        End If

        MyBase.WndProc(m)
    End Sub 'WndProc
    Private Sub btnthoat_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnthoat.Click
        Me.Close()
    End Sub
    Public array(4) As String
    Public co As Boolean = False
    Public flag As Boolean = False
    Private Sub btnsua_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsua.Click
        array(0) = Me.dshocvien.CurrentRow.Cells(0).Value
        array(1) = Me.dshocvien.CurrentRow.Cells(1).Value
        array(2) = Me.dshocvien.CurrentRow.Cells(2).Value
        array(3) = Me.dshocvien.CurrentRow.Cells(3).Value
        FormHocVien.Show()

       
    End Sub
End Class

Chào bạn lungocqua, mình định tạo một nút sửa ở formdshocvien. Cụ thể là như sau: form gồm lưới và các button , mình muốn chọn một dòng dữ liệu trên lưới rồi bấm nút thêm thì sẽ chuyển sang formhocvien với dữ liệu đã chọn đưa lên các textbox để sủa, ý của mình là như j, k biết viết code sao, mong bạn chỉ dùm, cảm ơn bạn nhiều
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi lungocqua » Thứ 6 29/10/2010 9:16 pm

Thì cứ làm đi chứ còn sao nữa! Làm rồi sẽ biết thôi. Dùng cái dshocvien.CurrentRow.Cells(số index).Value để lấy giá trị của nó rồi chuyển qua form kia. Mà tốt nhất là trong một form luôn cho rồi!
Xem trang dười đây có một số ví dụ sẵn.
http://www.forum.caulacbovb.com/viewtop ... 3&start=80
Ta đã trở lại và quên hết tất cả! :D
Hình đại diện của thành viên
lungocqua
Guru
Guru
 
Bài viết: 1225
Ngày tham gia: Thứ 3 18/08/2009 11:51 am
Đến từ: Phú Hữu - Nhơn Trạch - Đồng Nai
Đã cảm ơn: 0 lần
Được cảm ơn: 5 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 6 29/10/2010 9:31 pm

Mình đang học theo bạn kiểm tra trùng khóa cho bản hocvien nhưng mình đua code vô thì nó báo lổi. Code của mình như sau :
Mã: Chọn tất cả
 Private Sub btnthem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnthem.Click
        If txthotenhv.Text = "" Or txtquequan.Text = "" Then
            MsgBox("Thông tin chưa đầy đủ, yêu cầu nhập lại", MsgBoxStyle.OkOnly, "Thông báo")
        Else


            Dim commandInsert As New OleDbCommand()
            commandInsert.Connection = con
            commandInsert.CommandType = CommandType.Text
            commandInsert.CommandText = "Insert into HOCVIEN (MAHV, HOTENHV, PHAIHV, NGAYSINHHV, QUEQUAN, MALOP, DOITUONG) values('" & txtmahv.Text & "'," & txthotenhv.Text & "','" & cmbphai.Text & "','" & dttngaysinh.Text & " ','" & txtquequan.Text & "','" & cmbmalop.Text & "','" & cmbdoituong.Text & "')"

            If con.State = ConnectionState.Closed Then con.Open()

            Dim dt As New DataTable("HOCVIEN")
            Dim da As New OleDbDataAdapter("select MAHV, MALOP from HOCVIEN where(MAHV = '" & txtmahv.Text & "')", con) '<- sửa (không cần kt macc nữa!)
            da.Fill(dt)
            If dt.Rows.Count = 0 Then
                commandInsert.ExecuteNonQuery()
                MsgBox("Thông tin học viên đã thêm thành công", MsgBoxStyle.OkOnly, "Thông báo")
                If con.State = ConnectionState.Open Then con.Close()
            Else
                MsgBox("Trùng khóa mã học viên rồi kìa!", MsgBoxStyle.Exclamation, "Thông báo")
            End If

        End If
Đây là lổi :
Bạn không được cấp phép để xem tập tin đính kèm trong bài viết này.
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi lungocqua » Thứ 6 29/10/2010 9:57 pm

Ghi sai câu truy vần rồi còn la ó àh! :P
Syntax: [ Download ] [ Hide ]
Using vb.net Syntax Highlighting
  1.             commandInsert.CommandText = "Insert into HOCVIEN(MAHV, HOTENHV, PHAIHV, NGAYSINHHV, QUEQUAN, MALOP, DOITUONG) values('" & txtmahv.Text & "','" & txthotenhv.Text & "','" & cmbphai.Text & "',#" & dttngaysinh.Text & "#,'" & txtquequan.Text & "','" & cmbmalop.Text & "','" & cmbdoituong.Text & "')"
Parsed in 0.000 seconds, using GeSHi 1.0.8.11
Ta đã trở lại và quên hết tất cả! :D
Hình đại diện của thành viên
lungocqua
Guru
Guru
 
Bài viết: 1225
Ngày tham gia: Thứ 3 18/08/2009 11:51 am
Đến từ: Phú Hữu - Nhơn Trạch - Đồng Nai
Đã cảm ơn: 0 lần
Được cảm ơn: 5 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 6 29/10/2010 10:13 pm

bạn hay quá nhìn vào là biét sai chổ nào liền, ước gì mình đc phân nửa của bạn nha
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 6 29/10/2010 10:53 pm

bạn đừng cười mình nha, mình lấy code của nút sửa bạn hướng dẫn mình sủa lại thế này :
Mã: Chọn tất cả
Private Sub btnsua_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsua.Click

        'Get Record can update trong Table
        Dim adapter As New OleDbDataAdapter()
        Dim dt As New DataTable("NHANVIEN")
        Dim da As New OleDbDataAdapter()

        '<-Lỗi này tương tự như ở trên
        dt = Me.dshocvien.DataSource()
        '

        Dim row As DataRow = dt.Select("MAHV='" & (txtmahv.Text) & "'")(0)
        'Update row
        row.BeginEdit()
        row("HOTENHV") = txthotenhv.Text
        row("PHAIHV") = cmbphai.Text
        row("NGAYSINHHV") = dttngaysinh.Text
        row("QUEQUAN") = txtquequan.Text
        'row("MALOP") = cmbmalop.Text
        'row("DOITUONG") = cmbdoituong.Text
        row.EndEdit()
        'Tao command d? update s? thay d?i trên vào file data ngu?n
        Dim commandUpdate As New OleDbCommand()
        commandUpdate.Connection = con
        commandUpdate.CommandType = CommandType.Text
        'SQL for Update
        commandUpdate.CommandText = "Update NHANVIEN Set MAHV=@MAHV, HOTENHV=@HOTENHV, PHAIHV=@PHAIHV, NGAYSINHHV=@NGAYSINHHV, QUEQUAN=@QUEQUAN,MALOP=@MALOP,DOITUONG=@DOITUONG  Where MAHV=@MAHV"
        'Nap tham so cho các command trên
        commandUpdate.Parameters.Add("@MAHV", OleDbType.VarChar, 20, "MAHV")
        commandUpdate.Parameters.Add("@HOTENHV", OleDbType.VarChar, 20, "HOTENHV")
        commandUpdate.Parameters.Add("@PHAIHV", OleDbType.VarChar, 20, "PHAIHV") '<- Bạn đã đảo lộn hai trường 'Địa chỉ' và 'Điện thoại'
        commandUpdate.Parameters.Add("@NGAYSINHHV", OleDbType.VarChar, 20, "NGAYSINHHV") '<- Bạn đã đảo lộn hai trường 'Điện thoại' và 'Điạ chỉ'
        commandUpdate.Parameters.Add("@QUEQUAN", OleDbType.VarChar, 20, "QUEQUAN") '<- Bạn đã để sai kiểu dữ liệu ở đây. Sửa Integer -> VarChar. Độ dài của dữ liệu cho mỗi trường là 20 kí tự, như vậy là có ít quá không?
        'commandUpdate.Parameters.Add("@MALOP", OleDbType.VarChar, 20, "MALOP")
        'commandUpdate.Parameters.Add("@DOITUONG", OleDbType.VarChar, 20, "DOITUONG")
        'Dùng da d? áp d?t s? thay d?i trên vào File data ngu?n
        da.UpdateCommand = commandUpdate 'gán command
        'Dim a As New OleDbCommandBuilder(da)
        da.Update(dt)
    End Sub

nhưng nó không chạy mà còn báo lổi thêm cái nút thêm nữa bạn xem dùm mình nha, đây là lổi :
Bạn không được cấp phép để xem tập tin đính kèm trong bài viết này.
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi lungocqua » Thứ 6 29/10/2010 11:57 pm

MAHV bạn gõ vào không trùng khớp nên nó báo lỗi thôi. Mà MAHV là khóa chính, mà khóa chính thì ít ai mà đi sửa lắm.
Ta đã trở lại và quên hết tất cả! :D
Hình đại diện của thành viên
lungocqua
Guru
Guru
 
Bài viết: 1225
Ngày tham gia: Thứ 3 18/08/2009 11:51 am
Đến từ: Phú Hữu - Nhơn Trạch - Đồng Nai
Đã cảm ơn: 0 lần
Được cảm ơn: 5 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 7 30/10/2010 12:02 am

lungocqua đã viết:MAHV bạn gõ vào không trùng khớp nên nó báo lỗi thôi. Mà MAHV là khóa chính, mà khóa chính thì ít ai mà đi sửa lắm.

ý mình là dữ liệu đang có ở trong lưới, mình nhấp vào dòng đó và bắm nút sủa thì dữ liệu hiên lên textbox để sửa
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi lungocqua » Thứ 7 30/10/2010 12:04 am

Bạn xem hết bài này thì sẽ khắc phục được!
viewtopic.php?f=23&t=4103&start=80#p86189
Ta đã trở lại và quên hết tất cả! :D
Hình đại diện của thành viên
lungocqua
Guru
Guru
 
Bài viết: 1225
Ngày tham gia: Thứ 3 18/08/2009 11:51 am
Đến từ: Phú Hữu - Nhơn Trạch - Đồng Nai
Đã cảm ơn: 0 lần
Được cảm ơn: 5 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 7 30/10/2010 12:09 am

mình có đoạn code này bạn xem có sử dụng đc k :
Mã: Chọn tất cả
Imports System.Data
Imports System.Data.OleDb
Public Class FormHocVien
    Dim con As OleDbConnection
    Dim ms As String
    Dim txt_mahv As String '<-Thêm biến này
    Public Sub xem()
        Dim dt As New DataTable("HOCVIEN")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()

        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select * From HOCVIEN ORDER BY MAHV DESC"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        'dgvsv.DataSource = dt 'Load dữ liệu lên DataGridview



        'dt = data.ExecuteQuery("select MSSV,MA_P,HO,TEN, NAMSINH, CMND from SINHVIEN")
        dshocvien.DataSource = dt
        Fordgv()
    End Sub
    Private Sub FormHocVien_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        a.Hide()
        b.Hide()
        Dim str As String = "Provider= Microsoft.Jet.OLEDB.4.0;" _
                               & "Data Source = " & "data\database.mdb;"
        con = New OleDbConnection(str)
        con.Open()
        xem()
        btnxoa.Enabled = False
        dttngaysinh.Value = New Date(1989, 8, 12)
        cmbphai.Items.Add("Nam")
        cmbphai.Items.Add("Nữ")
        cmbdoituong.Items.Add("Học Sinh - Sinh Viên")
        cmbdoituong.Items.Add("Công Nhân Viên Chức")





        cmbmalop.DataSource = LayML()
        ' Dim dn As DataTable = LayMN()
        cmbmalop.DisplayMember = "ml"
        cmbmalop.ValueMember = "ml"



        b.DataSource = LayML2()
        b.ValueMember = "ml2"
        b.DisplayMember = "ml2"
        txt_mahv = txtmahv.Text '<-Thêm tại đây.
    End Sub

    Public Function LayMAKHOA() As DataTable
        'Tạo một đối tượng Datatable nhận dữ liệu trả về
        Dim dt As New DataTable("LOP")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()
        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select KHOA as k From LOP"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        Return dt
    End Function
    Public Function LayML() As DataTable
        'Tạo một đối tượng Datatable nhận dữ liệu trả về
        Dim dt As New DataTable("LOP")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()
        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select MALOP as ml From LOP"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        Return dt
    End Function
    Public Function LayML2() As DataTable
        'Tạo một đối tượng Datatable nhận dữ liệu trả về
        Dim dt As New DataTable("LOP")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()
        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select MALOP as ml2 From LOP"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        Return dt
    End Function

    Private Sub btnthem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnthem.Click
        If txthotenhv.Text = "" Or txtquequan.Text = "" Then
            MsgBox("Thông tin chưa đầy đủ, yêu cầu nhập lại", MsgBoxStyle.OkOnly, "Thông báo")
        Else


            Dim commandInsert As New OleDbCommand()
            commandInsert.Connection = con
            commandInsert.CommandType = CommandType.Text
            commandInsert.CommandText = "Insert into HOCVIEN(MAHV, HOTENHV, PHAIHV, NGAYSINHHV, QUEQUAN, MALOP, DOITUONG) values('" & txtmahv.Text & "','" & txthotenhv.Text & "','" & cmbphai.Text & "',#" & dttngaysinh.Text & "#,'" & txtquequan.Text & "','" & cmbmalop.Text & "','" & cmbdoituong.Text & "')"

            If con.State = ConnectionState.Closed Then con.Open()

            Dim dt As New DataTable("HOCVIEN")
            Dim da As New OleDbDataAdapter("select MAHV, MALOP from HOCVIEN where(MAHV = '" & txtmahv.Text & "')", con) '<- sửa (không cần kt macc nữa!)
            da.Fill(dt)
            If dt.Rows.Count = 0 Then
                commandInsert.ExecuteNonQuery()
                MsgBox("Thông tin học viên đã thêm thành công", MsgBoxStyle.OkOnly, "Thông báo")
                If con.State = ConnectionState.Open Then con.Close()
            Else
                MsgBox("Trùng khóa mã học viên rồi kìa!", MsgBoxStyle.Exclamation, "Thông báo")
            End If

        End If
    End Sub



    Private Sub cmbmalop_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbmalop.SelectedIndexChanged

        b.DataSource = LayML2()
        b.ValueMember = "ml2"
        b.DisplayMember = "ml2"
    End Sub
    Private Sub btnnhaplai_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnnhaplai.Click
        txthotenhv.Text = ""
        cmbphai.Text = ""
        txtquequan.Text = ""
        dttngaysinh.Value = New Date(1989, 8, 12)
        txtmahv.Text = ""

        cmbmalop.Text = ""
        cmbdoituong.Text = ""


    End Sub

    Private Sub btnthoat_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnthoat.Click
        Me.Close()
    End Sub

    Private Sub btnsua_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsua.Click

        'Get Record can update trong Table
        Dim adapter As New OleDbDataAdapter()
        Dim dt As New DataTable("HOCVIEN")
        Dim da As New OleDbDataAdapter()

        '<-Lỗi này tương tự như ở trên
        dt = Me.dshocvien.DataSource()
        '

        Dim row As DataRow = dt.Select("MAHV = '" & (txt_mahv) & "'")(0)
        'Update row
        row.BeginEdit()
        row("HOTENHV") = txthotenhv.Text
        row("PHAIHV") = cmbphai.Text
        row("NGAYSINHHV") = dttngaysinh.Text
        row("QUEQUAN") = txtquequan.Text
        row("MALOP") = cmbmalop.Text
        row("DOITUONG") = cmbdoituong.Text
        row.EndEdit()
        'Tao command d? update s? thay d?i trên vào file data ngu?n
        Dim commandUpdate As New OleDbCommand()
        commandUpdate.Connection = con
        commandUpdate.CommandType = CommandType.Text
        'SQL for Update
        commandUpdate.CommandText = "Update NHANVIEN Set MAHV=@MAHV, HOTENHV=@HOTENHV, PHAIHV=@PHAIHV, NGAYSINHHV=@NGAYSINHHV, QUEQUAN=@QUEQUAN,MALOP=@MALOP,DOITUONG=@DOITUONG  Where MAHV=@MAHV"
        'Nap tham so cho các command trên
        commandUpdate.Parameters.Add("@MAHV", OleDbType.VarChar, 20, "MAHV")
        commandUpdate.Parameters.Add("@HOTENHV", OleDbType.VarChar, 20, "HOTENHV")
        commandUpdate.Parameters.Add("@PHAIHV", OleDbType.VarChar, 20, "PHAIHV") '<- Bạn đã đảo lộn hai trường 'Địa chỉ' và 'Điện thoại'
        commandUpdate.Parameters.Add("@NGAYSINHHV", OleDbType.VarChar, 20, "NGAYSINHHV") '<- Bạn đã đảo lộn hai trường 'Điện thoại' và 'Điạ chỉ'
        commandUpdate.Parameters.Add("@QUEQUAN", OleDbType.VarChar, 20, "QUEQUAN") '<- Bạn đã để sai kiểu dữ liệu ở đây. Sửa Integer -> VarChar. Độ dài của dữ liệu cho mỗi trường là 20 kí tự, như vậy là có ít quá không?
        commandUpdate.Parameters.Add("@MALOP", OleDbType.VarChar, 20, "MALOP")
        commandUpdate.Parameters.Add("@DOITUONG", OleDbType.VarChar, 20, "DOITUONG")
        'Dùng da d? áp d?t s? thay d?i trên vào File data ngu?n
        da.UpdateCommand = commandUpdate 'gán command
        'Dim a As New OleDbCommandBuilder(da)
        da.Update(dt)
    End Sub
    Private Sub Fordgv()
        FormatDataGridView()

        'btnxem_Click(Me, Nothing)

        dshocvien.MultiSelect = True
        dshocvien.AllowUserToDeleteRows = False
        dshocvien.AllowUserToAddRows = False

        dshocvien.Columns(0).HeaderText = "Mã Học Viên"
        dshocvien.Columns(1).HeaderText = "Họ Tên "
        dshocvien.Columns(2).HeaderText = "Phái"
        dshocvien.Columns(3).HeaderText = "Ngày sinh"
        dshocvien.Columns(4).HeaderText = "Quê Quán"

        dshocvien.Columns(0).Visible = True

        ' Resize the DataGridView columns to fit the newly loaded content.
        dshocvien.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)
    End Sub
    Private Sub FormatDataGridView()
        With dshocvien
            ' Change the Border and Gridline Styles in the Windows Forms DataGridView Control
            .GridColor = Color.BlueViolet
            .RowHeadersVisible = False
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect
            .MultiSelect = False
            .AllowUserToAddRows = False
            .AllowUserToDeleteRows = False
            .BackgroundColor = Color.AliceBlue
            .ForeColor = Color.Green
            .AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple
        End With

        With dshocvien.ColumnHeadersDefaultCellStyle
            .BackColor = Color.Navy
            .ForeColor = Color.White
            .Font = New Font(dshocvien.Font, FontStyle.Bold)
        End With
    End Sub
    Protected Overrides Sub WndProc(ByRef m As Message)
        Const WM_SYSCOMMAND As Integer = &H112
        Const SC_CLOSE As Integer = &HF060

        If m.Msg = WM_SYSCOMMAND And m.WParam.ToInt32 = SC_CLOSE Then
            ' User clicked close button, do what you want here
            Return
        End If

        MyBase.WndProc(m)
    End Sub 'WndProc

    Private Sub btnxoa_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnxoa.Click
        If ms = "" Then
            MsgBox("Xóa không thành công", MsgBoxStyle.OkOnly, "Thông báo")
        Else
            If dshocvien.SelectedRows.Count > 0 Then

                If MsgBox("Bạn có chắc chắn muốn xóa không", MsgBoxStyle.YesNo, "Thông báo") = MsgBoxResult.Yes Then
                    Dim dt As New DataTable("HOCVIEN")
                    'Tạo bộ máy DataAdapter thực hiện command
                    Dim da As New OleDbDataAdapter()
                    'Tạo command để lấy dữ liệu ra ngoài
                    Dim commanddelete As New OleDbCommand()

                    commanddelete.Connection = con
                    commanddelete.CommandType = CommandType.Text
                    commanddelete.CommandText = "delete from HOCVIEN where MAHV='" + ms + "'"
                    ' da.SelectCommand = command ' gán command cho da
                    'da.Fill(dt)  'Nạp dữ liệu vào Table
                    'da.InsertCommand = commandInsert 'gán command
                    commanddelete.ExecuteNonQuery()
                    MsgBox("Xóa thành công", MsgBoxStyle.OkOnly, "Thông báo")
                    xem()
                End If
            End If
        End If
    End Sub

    Private Sub dshocvien_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dshocvien.CellContentClick
        If dshocvien.SelectedRows.Count > 0 Then
            ms = dshocvien.SelectedRows(0).Cells("MAHV").Value
            btnxoa.Enabled = True
            btnsua.Enabled = True

        End If
    End Sub
End Class


Cám ơn bạn nhiều
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi lungocqua » Thứ 7 30/10/2010 12:21 am

Bạn chạy thử coi. Bạn gửi cho mình cái Project cũng lâu rồi, nay bạn thêm control gì vào đó thì làm sao mình biết được. Chạy đi lỗi rồi tính. Nếu cái Form bạn đang chạy có thêm gì mới vào đó rồi thì gửi nó lên đây!
Ta đã trở lại và quên hết tất cả! :D
Hình đại diện của thành viên
lungocqua
Guru
Guru
 
Bài viết: 1225
Ngày tham gia: Thứ 3 18/08/2009 11:51 am
Đến từ: Phú Hữu - Nhơn Trạch - Đồng Nai
Đã cảm ơn: 0 lần
Được cảm ơn: 5 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 7 30/10/2010 12:35 am

đay là project của mình :
Bạn không được cấp phép để xem tập tin đính kèm trong bài viết này.
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 7 30/10/2010 6:38 pm

Không biết bạn lungocqua đâu r, mình đang chờ bạn ấy lên
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 7 30/10/2010 10:06 pm

Có ai sủa dùm mình cái lổi của formtimhocvien của mình k; đây là code của mình :
Mã: Chọn tất cả
Imports System.Data.OleDb
Imports System.Data
Public Class FormTimHocVien
    Dim mss As String
    Dim con As OleDbConnection ' Cục bộ trong Form


    Private Sub FormatDataGridView()
        With dshocvien
            ' Change the Border and Gridline Styles in the Windows Forms DataGridView Control
            .GridColor = Color.BlueViolet
            .RowHeadersVisible = False
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect
            .MultiSelect = False

            .AllowUserToAddRows = False
            .AllowUserToDeleteRows = False
            .BackgroundColor = Color.AliceBlue
            .ForeColor = Color.Green
            .AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple
        End With

        With dshocvien.ColumnHeadersDefaultCellStyle
            .BackColor = Color.Navy
            .ForeColor = Color.White
            .Font = New Font(dshocvien.Font, FontStyle.Bold)
        End With

    End Sub
    Private Sub Fordgv2()
        FormatDataGridView()

        'btnxem_Click(Me, Nothing)

        dshocvien.MultiSelect = True
        dshocvien.AllowUserToDeleteRows = False
        dshocvien.AllowUserToAddRows = False

        dshocvien.Columns(0).HeaderText = "MSSV"
        dshocvien.Columns(1).HeaderText = "Mã phòng"
        dshocvien.Columns(2).HeaderText = "Họ và Tên"
        dshocvien.Columns(3).HeaderText = "Ngày sinh"
        dshocvien.Columns(4).HeaderText = "CMND"
        dshocvien.Columns(5).HeaderText = "Ngày vào KTX"

        'dgvsv.Columns(0).Visible = False

        ' Resize the DataGridView columns to fit the newly loaded content.
        dshocvien.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)
    End Sub
    Private Sub FormTimHocVien_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Button2.Enabled = False
        Dim str As String = "Provider= Microsoft.Jet.OLEDB.4.0;" _
                       & "Data Source = " & "data\database.mdb;"
        con = New OleDbConnection(str)
        con.Open()
        cmbmalop.DataSource = LayML()
        ' Dim dn As DataTable = LayMN()
        cmbmalop.DisplayMember = "ml"
        cmbmalop.ValueMember = "ml"
        ' cbdn.DataSource = dn

        cmbmacc.DataSource = LayMCC()
        cmbmacc.DisplayMember = "mcc"
        cmbmacc.ValueMember = "mcc"

    End Sub
    Public Function LayML() As DataTable
        'Tạo một đối tượng Datatable nhận dữ liệu trả về
        Dim dt As New DataTable("LOP")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()
        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select LOP as ml From LOP"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        Return dt


        ' Dim dt As New DataTable()
        '  Dim sql As String
        '  sql = "Select MA_N as mdn from DAY_NHA "
        '  Dim ds As New conect()
        '  dt = ds.ExecuteQuery(sql)
        '  Return dt
    End Function
    Public Function LayMCC() As DataTable
        'Tạo một đối tượng Datatable nhận dữ liệu trả về
        Dim dt As New DataTable("CHUNGCHI")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()
        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select MACC as mcc From CHUNGCHI where MACC='" + cmbmacc.Text + "'"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        Return dt



    End Function
    Private Sub btnxem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnxem1.Click
        'Tạo một đối tượng Datatable nhận dữ liệu trả về
        Dim dt As New DataTable("HOCVIEN")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()

        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select MAHV, HOTENHV, PHAIHV, NGAYSINHHV,QUEQUAN,MALOP,DOITUONG From HOCVIEN where MAHV='" + txtmahv.Text + "'"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        'dgvsv.DataSource = dt 'Load dữ liệu lên DataGridview



        'dt = data.ExecuteQuery("select MSSV,MA_P,HO,TEN, NAMSINH, CMND from SINHVIEN")
        dshocvien1.DataSource = Me.BindingSource1
        Me.BindingSource1.DataSource = dt
        Fordgv3()
    End Sub
    Private Sub Fordgv3()
        FormatDataGridView3()

        'btnxem_Click(Me, Nothing)

        dshocvien1.MultiSelect = True
        dshocvien1.AllowUserToDeleteRows = False
        dshocvien1.AllowUserToAddRows = False

        dshocvien1.Columns(0).HeaderText = "MSSV"
        dshocvien1.Columns(1).HeaderText = "Mã phòng"
        dshocvien1.Columns(2).HeaderText = "Họ và Tên"
        dshocvien1.Columns(3).HeaderText = "Ngày sinh"
        dshocvien1.Columns(4).HeaderText = "CMND"

        'dgvsv.Columns(0).Visible = False

        ' Resize the DataGridView columns to fit the newly loaded content.
        dshocvien1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)
    End Sub
    Private Sub FormatDataGridView3()
        With dshocvien1
            ' Change the Border and Gridline Styles in the Windows Forms DataGridView Control
            .GridColor = Color.BlueViolet
            .RowHeadersVisible = False
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect
            .MultiSelect = False

            .AllowUserToAddRows = False
            .AllowUserToDeleteRows = False
            .BackgroundColor = Color.AliceBlue
            .ForeColor = Color.Green
            .AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple
        End With

        With dshocvien1.ColumnHeadersDefaultCellStyle
            .BackColor = Color.Navy
            .ForeColor = Color.White
            .Font = New Font(dshocvien.Font, FontStyle.Bold)
        End With
    End Sub

    Private Sub Fordgv4()
        FormatDataGridView4()

        'btnxem_Click(Me, Nothing)

        dshocvien2.MultiSelect = True
        dshocvien2.AllowUserToDeleteRows = False
        dshocvien2.AllowUserToAddRows = False

        dshocvien2.Columns(0).HeaderText = "MSSV"
        dshocvien2.Columns(1).HeaderText = "Mã phòng"
        dshocvien2.Columns(2).HeaderText = "Họ và Tên"
        dshocvien2.Columns(3).HeaderText = "Ngày sinh"
        dshocvien2.Columns(4).HeaderText = "CMND"
        dshocvien2.Columns(5).HeaderText = "Ngày vào KTX"

        'dgvsv.Columns(0).Visible = False

        ' Resize the DataGridView columns to fit the newly loaded content.
        dshocvien1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells)
    End Sub
    Private Sub FormatDataGridView4()
        With dshocvien2
            ' Change the Border and Gridline Styles in the Windows Forms DataGridView Control
            .GridColor = Color.BlueViolet
            .RowHeadersVisible = False
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect
            .MultiSelect = False

            .AllowUserToAddRows = False
            .AllowUserToDeleteRows = False
            .BackgroundColor = Color.AliceBlue
            .ForeColor = Color.Green
            .AlternatingRowsDefaultCellStyle.ForeColor = Color.Purple
        End With

        With dshocvien2.ColumnHeadersDefaultCellStyle
            .BackColor = Color.Navy
            .ForeColor = Color.White
            .Font = New Font(dshocvien.Font, FontStyle.Bold)
        End With
    End Sub

    Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
        Dim dt As New DataTable("HOCVIEN")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()

        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select MAHV, HOTENHV, PHAIHV, NGAYSINHHV,QUEQUAN,MALOP,DOITUONG From HOCVIEN where HOTENHV like'" + "%" + txthotenhv.Text + "%" + "'"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        'dgvsv.DataSource = dt 'Load dữ liệu lên DataGridview



        'dt = data.ExecuteQuery("select MSSV,MA_P,HO,TEN, NAMSINH, CMND from SINHVIEN")
        dshocvien2.DataSource = dt
        Fordgv4()
    End Sub
    Private Sub btnxem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnxem.Click
        'Tạo một đối tượng Datatable nhận dữ liệu trả về
        Dim dt As New DataTable("HOCVIEN")
        'Tạo bộ máy DataAdapter thực hiện command
        Dim da As New OleDbDataAdapter()
        'Tạo command để lấy dữ liệu ra ngoài
        Dim command As New OleDbCommand()

        command.Connection = con ' Kết nối
        command.CommandType = CommandType.Text  'loại lệnh sử dụng là Text hay là một query trong access
        command.CommandText = "Select MAHV, HOTENHV, PHAIHV, NGAYSINHHV,QUEQUAN,MALOP,DOITUONG From HOCVIEN where MAHV='" + cmbmalop.Text + "'"
        da.SelectCommand = command ' gán command cho da
        da.Fill(dt)  'Nạp dữ liệu vào Table
        'dgvsv.DataSource = dt 'Load dữ liệu lên DataGridview



        'dt = data.ExecuteQuery("select MSSV,MA_P,HO,TEN, NAMSINH, CMND from SINHVIEN")
        dshocvien.DataSource = Me.BindingSource1
        Me.BindingSource1.DataSource = dt
        Fordgv2()
        Button2.Enabled = False
    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        If mss = "" Then
            MsgBox("Xóa không thành công", MsgBoxStyle.OkOnly, "Thông báo")
        Else
            If dshocvien.SelectedRows.Count > 0 Then
                If MsgBox("Bạn có chắc chắn muốn xóa không?", MsgBoxStyle.YesNo, "Thông báo") = MsgBoxResult.Yes Then


                    Dim dt As New DataTable("LOP")
                    'Tạo bộ máy DataAdapter thực hiện command
                    Dim da As New OleDbDataAdapter()
                    'Tạo command để lấy dữ liệu ra ngoài
                    Dim commanddelete As New OleDbCommand()

                    commanddelete.Connection = con
                    commanddelete.CommandType = CommandType.Text
                    commanddelete.CommandText = "delete from HOCVIEN where MALOP='" + mss + "'"
                    ' da.SelectCommand = command ' gán command cho da
                    'da.Fill(dt)  'Nạp dữ liệu vào Table
                    'da.InsertCommand = commandInsert 'gán command
                    commanddelete.ExecuteNonQuery()
                    MsgBox("Xóa thành công", MsgBoxStyle.OkOnly, "Thông báo")
                    btnxem_Click(Me, Nothing)
                End If
            End If
        End If
    End Sub
    Private Sub dshocvien_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles dshocvien.SelectionChanged
        If dshocvien.SelectedRows.Count > 0 Then
            mss = dshocvien.SelectedRows(0).Cells("MAHV").Value
            Button2.Enabled = True
        End If
    End Sub

    Private Sub cmbmalop_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbmalop.SelectedIndexChanged
        cmbmacc.DataSource = LayMCC()
        cmbmacc.Refresh()
        cmbmacc.DisplayMember = "mcc"
        cmbmacc.ValueMember = "mcc"
    End Sub
End Class

Còn đây là lổi, mong các bạn giúp dùm
Bạn không được cấp phép để xem tập tin đính kèm trong bài viết này.
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi lungocqua » Thứ 7 30/10/2010 11:19 pm

tai_bl89 đã viết:mình có đoạn code này bạn xem có sử dụng đc k :

Class FormHocVien
Syntax: [ Download ] [ Hide ]
Using vb.net Syntax Highlighting
  1.     Public Sub xem()
  2.         Dim dt As New DataTable("HOCVIEN")
  3.         Dim da As New OleDbDataAdapter()
  4.         Dim command As New OleDbCommand()
  5.         command.Connection = con
  6.         command.CommandType = CommandType.Text
  7.         command.CommandText = "Select * From HOCVIEN ORDER BY MAHV DESC"
  8.         da.SelectCommand = command
  9.         da.Fill(dt)
  10.         dshocvien.DataSource = dt
  11.         Fordgv()
  12.  
  13.         Me.txtmahv.DataBindings.Add("Text", dt, "mahv")
  14.         Me.txtquequan.DataBindings.Add("Text", dt, "quequan")
  15.         Me.txthotenhv.DataBindings.Add("Text", dt, "hotenhv")
  16.         Me.cmbphai.DataBindings.Add("Text", dt, "phaihv")
  17.         Me.cmbdoituong.DataBindings.Add("Text", dt, "doituong")
  18.         Me.cmbmalop.DataBindings.Add("Text", dt, "malop")
  19.         Me.dttngaysinh.DataBindings.Add("Text", dt, "ngaysinhhv")
  20.     End Sub
Parsed in 0.016 seconds, using GeSHi 1.0.8.11

Việc còn lại là của bạn!
Ta đã trở lại và quên hết tất cả! :D
Hình đại diện của thành viên
lungocqua
Guru
Guru
 
Bài viết: 1225
Ngày tham gia: Thứ 3 18/08/2009 11:51 am
Đến từ: Phú Hữu - Nhơn Trạch - Đồng Nai
Đã cảm ơn: 0 lần
Được cảm ơn: 5 lần

Re: Kết nối CSDL Access trong VB.Net..

Gửi bàigửi bởi tai_bl89 » Thứ 7 30/10/2010 11:41 pm

Mình đã thay hàm xem() của mình bằng của bạn nhưng sao nó vẫn k chạy vậy bạn, nó báo lổi này nè :
Bạn không được cấp phép để xem tập tin đính kèm trong bài viết này.
tai_bl89
Thành viên năng nổ
Thành viên năng nổ
 
Bài viết: 88
Ngày tham gia: Thứ 5 13/05/2010 4:13 pm
Đã cảm ơn: 0 lần
Được cảm ơn: 0 lần

Trang trướcTrang kế tiếp

Quay về Visual Basic .NET và C# (VB.NET & C#)

Ai đang trực tuyến?

Đang xem chuyên mục này: Không có thành viên nào đang trực tuyến3 khách