• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

VB.Net và Access Database

Các bài viết hướng dẫn về Visual Basic .NET và C#

Moderators: tungcan5diop, QUANITGROBEST

thuyan1990
Thành viên trung thành
Thành viên trung thành
Posts: 299
Joined: Sat 02/01/2010 10:23 am
Has thanked: 20 times
Been thanked: 2 times

Re: VB.Net và Access Database

Postby thuyan1990 » Sat 23/01/2010 11:03 pm

Hình như 9 xác nó là type varChar :D



User avatar
xuanquy_th
Guru
Guru
Posts: 803
Joined: Tue 05/08/2008 9:15 pm
Location: Thanh Hoá
Has thanked: 1 time
Been thanked: 10 times
Contact:

Re: VB.Net và Access Database

Postby xuanquy_th » Mon 25/01/2010 5:37 pm

Nhìn vào tham số đầu vào thì bạn biết tại sao mình lại nói nó chỉ nhận lệnh thuộc loại Select.
Chỉ cần bạn đọc kỹ các ví dụ mình đưa là bạn sẽ hiểu tại sao.

vietteiv
Đã bao giờ chạy lệnh kết hợp chưa?
Khi Chúa Trời đóng cánh cửa này lại, Ngài sẽ mở một cánh cửa khác cho ta.
Nhưng ta thường nhìn quá lâu vào cánh cửa đã đóng nên không thấy được có một cánh cửa khác đang mở ra cho ta!!!

volcano2409
Thành viên năng nổ
Thành viên năng nổ
Posts: 92
Joined: Tue 21/04/2009 5:24 pm

Re: VB.Net và Access Database

Postby volcano2409 » Tue 16/03/2010 3:06 pm

Cho em hỏi làm sao có thể Add Field Name vào Combobox dc vậy anh !

User avatar
xuanquy_th
Guru
Guru
Posts: 803
Joined: Tue 05/08/2008 9:15 pm
Location: Thanh Hoá
Has thanked: 1 time
Been thanked: 10 times
Contact:

Re: VB.Net và Access Database

Postby xuanquy_th » Tue 16/03/2010 4:47 pm

  1. cbo.DataSource = nguồn dữ liệu
  2. cbo.ValueMember = Field nhận trả giá trị
  3. cbo.DisplayMember = Field hiển thị giá trị
Khi Chúa Trời đóng cánh cửa này lại, Ngài sẽ mở một cánh cửa khác cho ta.
Nhưng ta thường nhìn quá lâu vào cánh cửa đã đóng nên không thấy được có một cánh cửa khác đang mở ra cho ta!!!

volcano2409
Thành viên năng nổ
Thành viên năng nổ
Posts: 92
Joined: Tue 21/04/2009 5:24 pm

Re: VB.Net và Access Database

Postby volcano2409 » Fri 19/03/2010 12:02 pm

Cho em hỏi them tí ạ !

Khi mình thêm một Field rồi ! Nhưng lại phải thoát ra rồi vao lại nó mới Cập nhập Data cho combobox !
Vậy có cách nào ko cần phải thoát ra nhưng vẫn cập nhập dc ?

User avatar
manhhung87
Thành viên tâm huyết
Thành viên tâm huyết
Posts: 320
Joined: Fri 30/05/2008 8:47 am
Location: Ha Noi University of Industry
Been thanked: 1 time
Contact:

Re: VB.Net và Access Database

Postby manhhung87 » Sat 20/03/2010 9:29 am

đoạn code load data vào combobox bạn để riểng ra một thủ tục khi. Khi bạn cập nhật xong csdl hay thay đổi gì gì đó, bạn chỉ cận chạy lại cái thủ tục đó.
Công cụ quản trị website.
http://www.vnkweb.com

jang
Posts: 1
Joined: Mon 05/04/2010 6:01 pm

Re: VB.Net và Access Database

Postby jang » Mon 05/04/2010 6:29 pm

ai giúp xem cho em cái phần update nó cứ báo lỗi Syntax error in UPDATE statement.


Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim row As DataRow = dt.Select("MaHang = '" & txtMahang.Text & "'")(0)
row.BeginEdit()
row("TenHang") = txtTenhang.Text
row("SoLuong") = txtSoluong.Text
row("MaKho") = txtMakho.Text
row.EndEdit()
frmqldulieu.DataGridView1.DataSource = dt
Dim commandUpdate As New OleDbCommand()
commandUpdate.Connection = con
commandUpdate.CommandType = CommandType.Text
commandUpdate.CommandText = "Update Hanghoa Set TenHang=@TenHang, SoLuong=@SoLuong, MaKho=@MaKho, Where MaHang=@MaHang"
commandUpdate.Parameters.Add("@TenHang", OleDbType.VarChar, 100, "TenHang")
commandUpdate.Parameters.Add("@SoLuong", OleDbType.Numeric, 50, "SoLuong")
commandUpdate.Parameters.Add("@MaKho", OleDbType.VarChar, 50, "MaKho")
commandUpdate.Parameters.Add("@MaHang", OleDbType.VarChar, 50, "MaHang")
da.UpdateCommand = commandUpdate
da.Update(dt)
End Sub

zippo66
Thành viên chính thức
Thành viên chính thức
Posts: 14
Joined: Tue 13/04/2010 1:56 pm
Location: VNIT
Contact:

Re: VB.Net và Access Database

Postby zippo66 » Mon 19/04/2010 10:45 pm

Code: Select all

 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim row As DataRow = dt.Select("Msgv='" & TextBox1.Text & "'")(0)
        'Update row
        row.BeginEdit()
        row("Msgv") = TextBox1.Text
        row("Tengv") = TextBox2.Text
        row("Sodienthoai") = TextBox3.Text
        row("Diachi") = TextBox4.Text
        row.EndEdit()
        'Tao command để update sự thay đổi trên vào file data nguồn
        Dim commandUpdate As New OleDbCommand()
        commandUpdate.Connection = con
        commandUpdate.CommandType = CommandType.Text       
        commandUpdate.CommandText = "Update Giaovien Set Msgv=@Msgv, Tengv=@Tengv, Sodienthoai=@Sodienthoai, Diachi=@Diachi  Where Msgv=@Msgv"
     
        commandUpdate.Parameters.Add("@Msgv", OleDbType.VarChar, 20, "Msgv")
        commandUpdate.Parameters.Add("@Tengv", OleDbType.VarChar, 20, "Tengv")
        commandUpdate.Parameters.Add("@Sodienthoai", OleDbType.Numeric, 20, "Sodienthoai")
        commandUpdate.Parameters.Add("@Diachi", OleDbType.VarChar, 20, "Diachi")
   
        da.UpdateCommand = commandUpdate
       
        da.Update(dt)

    End Sub

Các huynh có thể chỉ giáo giúp e được k ạ ?
Trong Database có 4 trường : Msgv , Tengv , Sodienthoai , Diachi
E muốn update mỗi khi chỉnh sửa trong datagrid nhưng khi F5 e bị báo lỗi : Cannot find colums [Msgv]
mặc dù trong Database e có rồi và có tên là Msgv !
E đang k biết cách chữa !
Mong các huynh chỉ giáo e với !!!!
E nghĩ nó chưa tìm được khóa chính nhưng e chưa biết sửa kiểu gì nữa ạ
!
Va- roi- Gio' se lai. dua may^ ve- troi- [list=][/list]

User avatar
tungcan5diop
Cựu chiến binh
Cựu chiến binh
Posts: 1123
Joined: Wed 24/09/2008 4:04 pm
Location: TPHCM
Has thanked: 1 time
Been thanked: 28 times

Re: VB.Net và Access Database

Postby tungcan5diop » Tue 20/04/2010 9:53 am

lỗi này bạn tìm ngay trong chủ để này hoặc tìm trong forum nhé,lúc trước cũng đã có mem bị như bạn vậy đó,bạn chịu khó tìm nhé.
mình chỉ chú ý bạn cái này thôi:trong nguồn dữ liệu mà bạn đổ cho nguồn
  1. Dim row As DataRow = dt.Select("Msgv='" & TextBox1.Text & "'")(0)

thì bạn xem câu truy vấn của bạn đã select cái cột MSGV chưa.
vd:
nếu bạn viết
[sql]select tengv,namsinh from dt_giaovien[/sql]

[vbnet]Dim row As DataRow = dt.Select("Msgv='" & TextBox1.Text & "'")(0)[/vbnet]
thì nó sẽ báo lỗi như bạn đã nêu
..nếu bạn làm
[sql]select msgv, tengv,namsinh from dt_giaovien[/sql]
thì nó sẽ ko báo lỗi nữa.
Hỡi thế gian bug(lỗi) là gì?
Mà sửa...hoài không hết!

zippo66
Thành viên chính thức
Thành viên chính thức
Posts: 14
Joined: Tue 13/04/2010 1:56 pm
Location: VNIT
Contact:

Re: VB.Net và Access Database

Postby zippo66 » Tue 20/04/2010 10:08 am

Cảm ơn anh. E đã tìm nhưng các câu trả lời đều k rõ .
A có thể xem qua code toàn bài của e được k ạ ?
E chưa hiểu lắm.
Vì nếu như thế , tức là ở câu select ở ngay trong button này hay câu nào ạ. ?
Cảm ơn anh rất nhiều

Code: Select all

Imports System.Data
Imports System.Data.OleDb
Public Class Form1
    Dim con As New OleDbConnection
    Dim dt As New DataTable("Giaovien")
    Dim da As New OleDbDataAdapter()
        Private Sub ketnoi()
        Dim str As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & Application.StartupPath & "\dataBTL.mdb;"
        con = New OleDbConnection(str)
        con.Open()
    End Sub
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'TODO: This line of code loads data into the 'DataBTLDataSet1.Giaovien' table. You can move, or remove it, as needed.
        Me.GiaovienTableAdapter.Fill(Me.DataBTLDataSet1.Giaovien)
        ketnoi()
       
    End Sub


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        ketnoi()
        Dim command As New OleDbCommand()
        command.Connection = con
        command.CommandType = CommandType.Text
        command.CommandText = "Select * from Giaovien"
        da.SelectCommand = command
        da.Fill(dt)
        DataGridView1.DataSource = dt
        TextBox1.DataBindings.Add("Text", dt, "Msgv") ' Ở đây ta cần binding textbox txtSTT với giá trị Text ở cột STT của Table
        TextBox2.DataBindings.Add("Text", dt, "Tengv")
        TextBox3.DataBindings.Add("Text", dt, "Sodienthoai")
        TextBox4.DataBindings.Add("Text", dt, "Diachi")


    End Sub

   
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        ketnoi()

        Dim row As DataRow = dt.Select("Msgv='" & TextBox1.Text & "'")(0)
        row.BeginEdit()
        row("Msgv") = TextBox1.Text
        row("Tengv") = TextBox2.Text
        row("Sodienthoai") = TextBox3.Text
        row("Diachi") = TextBox4.Text
        row.EndEdit()
        Dim commandUpdate As New OleDbCommand()
        Try
            commandUpdate.Connection = con
            commandUpdate.CommandType = CommandType.Text         'SQL for Update
            commandUpdate.CommandText = "Update Giaovien Set Msgv=@Msgv, Tengv=@Tengv, Sodienthoai=@Sodienthoai, Diachi=@Diachi  Where Msgv=@Msgv"

        Catch ex As Exception
            MsgBox(ex.Message, MsgBoxStyle.Exclamation, "Error")
        End Try
        commandUpdate.Parameters.Add("@Msgv", OleDbType.VarChar, 20, "Msgv")
        commandUpdate.Parameters.Add("@Tengv", OleDbType.VarChar, 20, "Tengv")
        commandUpdate.Parameters.Add("@Sodienthoai", OleDbType.Numeric, 20, "Sodienthoai")
        commandUpdate.Parameters.Add("@Diachi", OleDbType.VarChar, 20, "Diachi")
        Dim a As New OleDbCommandBuilder(da)
        da.Update(dt)

    End Sub

   
End Class
!
Va- roi- Gio' se lai. dua may^ ve- troi- [list=][/list]

User avatar
tungcan5diop
Cựu chiến binh
Cựu chiến binh
Posts: 1123
Joined: Wed 24/09/2008 4:04 pm
Location: TPHCM
Has thanked: 1 time
Been thanked: 28 times

Re: VB.Net và Access Database

Postby tungcan5diop » Tue 20/04/2010 10:38 am

gửi cái project của bạn lên đây đi,mình coi cho
trong câu:
Select * from Giaovien-->bạn đừng ghi select *,ghi hết tất cả các trường ra.
Hỡi thế gian bug(lỗi) là gì?
Mà sửa...hoài không hết!

zippo66
Thành viên chính thức
Thành viên chính thức
Posts: 14
Joined: Tue 13/04/2010 1:56 pm
Location: VNIT
Contact:

Re: VB.Net và Access Database

Postby zippo66 » Tue 20/04/2010 10:56 am

Đây là project và database của e đấy a.
Mong a giúp đỡ
Attachments
testketnoi.rar
(514.48 KiB) Downloaded 563 times
dataBTL.rar
(12.24 KiB) Downloaded 454 times
!
Va- roi- Gio' se lai. dua may^ ve- troi- [list=][/list]

User avatar
tungcan5diop
Cựu chiến binh
Cựu chiến binh
Posts: 1123
Joined: Wed 24/09/2008 4:04 pm
Location: TPHCM
Has thanked: 1 time
Been thanked: 28 times

Re: VB.Net và Access Database

Postby tungcan5diop » Tue 20/04/2010 11:26 am

mình ko mở được(bạn xài 2008,mình xài 2005)
nhưng coi qua code thì thấy:khi bạn bấm Button2 thì bạn sẽ lọc dữ liệu và khi đó sẽ tiến hành lưu,còn Button1 có nhiệm vụ connect tới database,đổ dữ liệu vào DataGridView(đồng thời đẩy dữ liệu vào datatable dt-nơi mà bạn sẽ lọc dữ liệu..vậy cho nên,khi bạn bấm Button2 mà chưa bấm Button1 thì sẽ bị lỗi như bạn nói,đến giờ bạn hiểu vì sao mà nó báo lỗi là ko có MSGV khi bạn bấm Button2 chưa?
cách khắc phuc bấm Button1 rồi mới cho hiện Button2,tùy bạn xử lý...
Hỡi thế gian bug(lỗi) là gì?
Mà sửa...hoài không hết!

zippo66
Thành viên chính thức
Thành viên chính thức
Posts: 14
Joined: Tue 13/04/2010 1:56 pm
Location: VNIT
Contact:

Re: VB.Net và Access Database

Postby zippo66 » Tue 20/04/2010 11:46 am

vậy a ơi. cho e hỏi đoạn code datablinding của e có vấn đề j k ạ ? Nút update của e có hiệu lực trên mã GV đúng k ạ ? Vậy e muốn update toàn bộ columns thì như nào ạ ? E chưa rành về Vb.net lắm. Đây là tự học nên còn rất nhiều thứ phải học hỏi. MOng a giúp đỡ .
!
Va- roi- Gio' se lai. dua may^ ve- troi- [list=][/list]

zippo66
Thành viên chính thức
Thành viên chính thức
Posts: 14
Joined: Tue 13/04/2010 1:56 pm
Location: VNIT
Contact:

Re: VB.Net và Access Database

Postby zippo66 » Tue 20/04/2010 11:49 am

Anh ơi .E còn 1 việc nữa đó là : khi update như thế , thì update vào dataset hay trực tiếp vào database ạ ? e đã thử nhưng k save được update trong database a ạ ?
!
Va- roi- Gio' se lai. dua may^ ve- troi- [list=][/list]

volcano2409
Thành viên năng nổ
Thành viên năng nổ
Posts: 92
Joined: Tue 21/04/2009 5:24 pm

Re: VB.Net và Access Database

Postby volcano2409 » Fri 23/04/2010 9:43 am

Cái code của Anh Tuyen ấy ! Không thể del data khi trong database ko còn một Row nào ! Ai chỉ em cách fix cái ạ !

User avatar
vietteiv
Quản trị
Quản trị
Posts: 1325
Joined: Sat 10/02/2007 12:17 am
Location: Cung cấp giải pháp quản lý doanh nghiệp, dự án, tư vấn xây dựng
Has thanked: 6 times
Been thanked: 71 times
Contact:

Re: VB.Net và Access Database

Postby vietteiv » Fri 23/04/2010 10:19 am

volcano2409 wrote:Cái code của Anh Tuyen ấy ! Không thể del data khi trong database ko còn một Row nào ! Ai chỉ em cách fix cái ạ !

khi database ko còn 1 row nào thì lấy gì để del nữa hả bạn!!!

zippo66
Thành viên chính thức
Thành viên chính thức
Posts: 14
Joined: Tue 13/04/2010 1:56 pm
Location: VNIT
Contact:

Re: VB.Net và Access Database

Postby zippo66 » Fri 23/04/2010 8:35 pm

các anh ơi , cho e hỏi , e vẫn bị báo lỗi là : Cannot find columns !!! e chưa làm được , huynh nào có 1 bài về như thế, 1 bài trọn vẹn có thể up lên dể e tham khảo được k ạ ? ví dụ thôi ạ :( . E gà quá :((
!
Va- roi- Gio' se lai. dua may^ ve- troi- [list=][/list]

volcano2409
Thành viên năng nổ
Thành viên năng nổ
Posts: 92
Joined: Tue 21/04/2009 5:24 pm

Re: VB.Net và Access Database

Postby volcano2409 » Sun 13/06/2010 7:23 pm

vietteiv wrote:
volcano2409 wrote:Cái code của Anh Tuyen ấy ! Không thể del data khi trong database ko còn một Row nào ! Ai chỉ em cách fix cái ạ !

khi database ko còn 1 row nào thì lấy gì để del nữa hả bạn!!!


Không anh , ý em là trước đó trong data có dữ liệu , Nếu xóa hết các dữ liệu trong đó và nhấn nút Update sẽ báo lỗi
Ý em ở đây là mún xóa hết dữ liệu đi !

bigboy83
Thành viên năng nổ
Thành viên năng nổ
Posts: 66
Joined: Thu 26/03/2009 8:26 am

Re: VB.Net và Access Database

Postby bigboy83 » Tue 13/07/2010 7:43 pm

cho em hỏi làm sao để cập nhật trực tiếp từ datagirdview mà ko cần xài textbox, chỉ cần nhập rồi nó tự cập nhật :( em tìm ko có

mong các anh chỉ giúp em

rất cảm ơn


Return to “[.NET] Bài viết hướng dẫn”

Who is online

Users browsing this forum: No registered users and 2 guests