Butuh waktu lama bagi saya untuk menemukan contoh langsung seperti ini untuk bekerjakata Sektor
Alat -> Referensi -> Objek Data Microsoft ActiveX 2. 8 Perpustakaan
Kode
Sub ConnectSqlServer() Dim conn As ADODB.Connection Dim rs As ADODB.Recordset Dim sConnString As String ' Create the connection string. sConnString = "Provider=SQLOLEDB;Data Source=INSTANCE\SQLEXPRESS;" & _ "Initial Catalog=MyDatabaseName;" & _ "Integrated Security=SSPI;" ' Create the Connection and Recordset objects. Set conn = New ADODB.Connection Set rs = New ADODB.Recordset ' Open the connection and execute. conn.Open sConnString Set rs = conn.Execute("SELECT * FROM Table1;") ' Check we have data. If Not rs.EOF Then ' Transfer result. Sheets(1).Range("A1").CopyFromRecordset rs ' Close the recordset rs.Close Else MsgBox "Error: No records returned.", vbCritical End If ' Clean up If CBool(conn.State And adStateOpen) Then conn.Close Set conn = Nothing Set rs = Nothing End Sub
Untuk info lebih lanjut tentang string koneksi. http. // www. connectionstrings. comKlik untuk meluaskan
Terima kasih banyak telah membantu saya mengatasi rintangan ini
kata bennymc
Saya merasakan Pengakuan cepat dan terima kasih sudah beres
Thread ini sangat membantu saya, terima kasih untuk itu Sektor
Bagi mereka yang sedikit bingung pada awalnya seperti saya, berikut adalah cara memecahnya
Ingatlah untuk membuka Alat > Referensi dan centangMicrosoft ActiveX Data Objects 2. 8 Perpustakaan (atau lebih tinggi)
Di bagian yang menyatakanKode
sConnString = "Provider=SQLOLEDB;Data Source=INSTANCE\SQLEXPRESS;" & _ "Initial Catalog=MyDatabaseName;" & _ "Integrated Security=SSPI;"_
Sumber Data adalah tempat barang-barang Anda berada di Server apa pun yang Anda gunakan. Yaitu, Sumber Data= SERVER1\FOLDER (Jangan mencari-cari di Program Files untuk. exe untuk SQL Server 2008 seperti yang saya lakukan *facepalm*)
Katalog Awal adalah apa pun nama basis data Anda. Ganti saja" MyDatabaseName" ke milik Anda.
Kedengarannya jelas, saya tahu, tetapi saya benar-benar baru dalam hal ini, seperti banyak orang yang melihatnya
BersulangKlik untuk meluaskan
Adakah yang bisa memberi tahu saya bagaimana tepatnya Anda menentukan pengganti SERVER1\FOLDER ? . \Program Files\Microsoft SQL Server\MSSQL11. MSSQLSERVER\MSSQL\DATA. Apa yang harus saya gunakan selain SERVER1 is obviously the server name BUT what is FOLDER ? My db location is this: \Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA. What should I use instead of FOLDER ??? .
Di beberapa “resep” sebelumnya saya menulis tentang cara menyambung ke Microsoft SQL Server dari Excel untuk mengambil data ke lembar kerja. Ini semua adalah operasi "tidak bersalah", karena Anda hanya dapat membaca data dari database, bukan untuk mengubahnya. Kadang-kadang perlu untuk membuat program yang melakukan manipulasi yang lebih kompleks atas database dengan menjalankan kueri SQL yang sesuai, yang akan dibahas dalam teks berikut
Untuk mengakses database, Anda harus terlebih dahulu memasukkan pustaka yang sesuai yang berisi objek dan metode yang diperlukan. Ini dicapai dengan menggunakan ALT + F11 untuk masuk ke Editor VBA. Kemudian Anda perlu membuka menu Tools, dan selanjutnya pilih opsi Referensi. Sebuah jendela akan muncul yang berisi daftar pustaka yang tersedia yang diperlukan untuk memeriksa Microsoft ActiveX Data Objects 2. 0 perpustakaan
Mari kita buat program. Pertama, Anda perlu mendeklarasikan tiga variabel
Redup c Sebagai ADODB. Koneksi
Dim rs Sebagai ADODB. Kumpulan rekaman
Dim connectionstring As String
Variabel pertama diperlukan untuk membuat koneksi database, variabel kedua digunakan untuk membuat rekaman ulang, dan variabel ketiga digunakan untuk string koneksi. String koneksi berbeda dari database ke database, dan ini digunakan untuk menentukan parameter koneksi dan server database yang ingin kita sambungkan. Informasi lebih lanjut dapat ditemukan di tautan berikut. http. // www. connectionstrings. com
Kami mendefinisikan string untuk menghubungkan ke database sebagai berikut
connectionstring = “Penyedia=SQLOLEDB;Sumber Data=EKSQL;”
“Katalog Awal=TESTDB;”
“Keamanan Terintegrasi=SSPI;”
Di belakang kata Sumber Data harus menunjukkan nama instance dari server SQL, dan di belakang Katalog Awal nama database yang ingin kita sambungkan. Setelah mendefinisikan string, kami membuat koneksi baru dan recordset, dan selanjutnya kami perlu mengeksekusi kueri SQL yang diinginkan menggunakan metode Execute. Sintaksnya adalah
Execute ()
Dalam kasus khusus, jika kami ingin mengambil semua catatan dari tabel Mitra, kami akan menulis
Tetapkan rs=c. Jalankan ("PILIH * DARI Mitra;")
Metode Execute juga memungkinkan Anda untuk menjalankan perintah SQL lainnya, beberapa di antaranya dapat mengubah atau menghapus catatan, jadi berhati-hatilah saat menggunakannya
Pada akhirnya, lebih lanjut diperlukan untuk mengambil data ke dalam lembar kerja dan menutup koneksi ke database, dan cara melakukannya dapat Anda lihat di program berikut