Halo. Saya mencoba menghubungkan proyek visual basic saya ke database mysql menggunakan xampp. Saya mengunduh vbconnector SQL dari situs web ini

pemrograman


Saya mencoba menghubungkan proyek visual basic saya ke database mysql menggunakan xampp. Saya mengunduh sql vbconnector dari situs web ini https://dev.mysql.com/downloads/connector/net/
tetapi ketika saya mencoba untuk men-debug proyek saya, setiap perintah mysql membaca kesalahan dan jika saya pergi dan menambahkan kembali referensi mysql, semua kesalahan akan hilang tetapi kemudian jika saya men-debug lagi, masalah debugging yang sama terjadi.

Apa yang saya coba:

Imports MySql.Data.MySqlClient
Imports System.IO
Module databaseconn
    Public conn As MySqlConnection
    Public dr As MySqlDataReader
    Public flag As Boolean
    Public dt As DataTable
    Public da As MySqlDataAdapter
    Public i As Integer
    Public ds As DataSet
    Public cmd As MySqlCommand
    Public result As Boolean

    Public Function dbconn() As Boolean
        Try
            If conn.State = ConnectionState.Closed Then
                conn.ConnectionString = "server=localhost;username=root;password=;database=database"
                result = True
            End If
        Catch ex As Exception
            result = False
            MsgBox(ex.Message)

        End Try
        Return result
    End Function
End Module

Solusi 1

Kode itu tidak melakukan apa pun dengan DB, jadi sulit untuk mengetahui apa masalah Anda. Yang dilakukan kode tersebut hanyalah menyetel string koneksi (yang akan saya bahas lagi nanti) dan tidak ada yang lain: koneksi tidak dapat digunakan – dan tetap ditangani dengan buruk.

Saat Anda mengajukan pertanyaan, Anda perlu memasukkan informasi yang relevan: “ketika saya mencoba men-debug proyek saya, setiap perintah mysql membaca kesalahan” tidak memberi tahu siapa pun apa pun karena kami tidak dapat melihat kode dengan melakukan apa pun dengan objek Command, atau memberi tahu apa yang pesan kesalahan mungkin.
Pesan kesalahan berisi banyak informasi jika Anda membacanya dengan cermat – mulai dari baris file mana yang menunjukkan masalah, hingga deskripsi masalah yang ditemukan. Jadi mulailah dari sini: Cara Menulis Kode untuk Memecahkan Masalah, Panduan Pemula Bagian 2: Kesalahan Sintaks[^] – ini berbicara tentang kesalahan sintaksis, tetapi kesalahan run time cenderung menyajikan informasi yang sama sedikit berbeda.

Ada juga artikel bagus di sini: Mengajukan pertanyaan adalah sebuah keterampilan[^] yang menjelaskan cara mengajukan pertanyaan sehingga Anda mendapatkan respons yang bermanfaat.

Kembali ke kode yang Anda tampilkan, dan ada tiga masalah yang saya lihat di sana:
1) Kata sandi Anda untuk DB multipengguna tidak boleh kosong, dan nama admin default juga tidak boleh digunakan – hal ini memungkinkan siapa pun yang ingin melakukan apa pun terhadap DB Anda: mencurinya, mengacaknya untuk meminta tebusan, atau menghancurkannya misalnya. Tetapkan kata sandi yang baik dan kuat pada akun admin yang diganti namanya dan Anda akan lebih aman.
2) Jangan melakukan hardcode string koneksi ke dalam kode Anda: ini berarti ketika Anda merilisnya, Anda harus mengubahnya untuk server produksi (atau pengujian yang lebih buruk terhadap server produksi yang bersifat bunuh diri) dan secara efektif melepaskan kode yang belum teruji! Kesalahan seperti itu dapat berdampak buruk pada klien dan berdampak negatif pada reputasi dan saldo bank Anda … Gunakan file konfigurasi untuk menyimpan string koneksi sehingga kode tidak perlu diubah saat Anda melepaskannya.
3) Jangan menggunakan kembali satu Koneksi ke DB: Buatlah saat Anda membutuhkannya di dalam a Using blok dan sistem akan Menutup dan Membuangnya ketika Anda selesai menggunakannya. Koneksi seperti itu tidak hanya sumber daya yang langka, tetapi juga dapat menyebabkan masalah nyata jika Anda membuka DataReader pada koneksi dan kemudian mencoba menggunakan kembali koneksi yang sama untuk INSERT atau UPDATE tabel: server akan memunculkan kesalahan karena pembaca masih menggunakan koneksi.

コメント

タイトルとURLをコピーしました