PDA

View Full Version : Xin giúp em kết nối với CSDL của SQL Server 2008



Shalaku2007
16-01-2009, 19:33
Máy em dùng SQL Server 2008, em có tạo 1 user tên Shalaku đăng nhập vào bằng SQL Server Authentication thành công với Login là Shalaku và Pass : sqlserver08, rồi em tạo 1 Database QLNV bằng cách bấm phải chuột chọn New Database và tạo 1 Table DON_VI cũng bằng cách đó.
Sau đó em vào Microsoft Visual Studio tạo 1 Module có các lệnh như sau :

Khai báo sử dụng thư viện Hàm
Imports System.Data.SqlClient

Module LT_BANG_QLNV_SQL

'Khai báo Chuoi_ket_noi
Public Chuoi_ket_noi As String = "Server = Localhost; Initial Catalog = QLNV; User ID = Shalaku; Pwd = sqlserver08"

'Khai báo Hàm đọc bảng
Public Function Doc_bang(ByVal Chuoi_lenh As String) As DataTable

Dim Kq As New DataTable

Try

'Khai báo Bo_thich_ung
Dim Bo_thich_ung As New SqlDataAdapter(Chuoi_lenh, Chuoi_ket_noi)

'Sử dụng Bo_thich_ung để đọc bảng
Bo_thich_ung.FillSchema(Kq, SchemaType.Source)
Bo_thich_ung.Fill(Kq)

Catch Loi As Exception

Dim Thong_bao_loi As String = "Lỗi đọc CSDL : " & vbCrLf
Thong_bao_loi &= "Chuỗi lệnh : " & Chuoi_lenh & vbCrLf
Thong_bao_loi &= "Chuỗi kết nối : " & Chuoi_ket_noi & vbCrLf
Thong_bao_loi &= "Lỗi : " & Loi.Message
MessageBox.Show(Thong_bao_loi)

End Try

Return Kq

End Function

End Module

Tiếp đến em tạo 1 Windows Form là MH_Thu_nghiem với 1 Combobox với Code sau

Public Class MH_Thu_nghiem

Private Sub MH_Thu_nghiem_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim Bang_don_vi As DataTable

Bang_don_vi = LT_BANG_QLNV_SQL.Doc_bang("Select * From DON_VI")

Danh_sach_chon.DataSource = Bang_don_vi
Danh_sach_chon.DisplayMember = "Ten_don_vi"

End Sub
End Class

Khi chạy thì nó báo lỗi như thế này : Login failed for user "Shalaku".
Xin hãy giúp em, em mới lập trình và chưa hiểu nhiều về SQL Server 2008 lắm ạ
Xim cảm ơn trước

dangviethai
16-01-2009, 20:47
'Khai báo Chuoi_ket_noi
Public Chuoi_ket_noi As String = "Server = Localhost; Initial Catalog = QLNV; User ID = Shalaku; Pwd = sqlserver08"


không biết bạn có đặt Instance Name cho SQL Server không ? nếu đặt thì phải thêm vào chuỗi kết nối
bạn có thể xem thêm ở đây http://connectionstrings.com/sql-server-2008