Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
oleh Scott Mitchell
Dalam tutorial sebelumnya, kami menggunakan kontrol ObjectDataSource untuk sepenuhnya memisahkan lapisan presentasi dari lapisan Akses Data. Dimulai dengan tutorial ini, kita mempelajari bagaimana kontrol SqlDataSource dapat digunakan untuk aplikasi sederhana yang tidak memerlukan pemisahan presentasi dan akses data yang ketat.
Pendahuluan
Semua tutorial yang telah kami periksa sejauh ini telah menggunakan arsitektur berjenjang yang terdiri dari lapisan presentasi, Logika Bisnis, dan Akses Data. Lapisan Akses Data (DAL) dibuat dalam tutorial pertama (Membuat Lapisan Akses Data) dan Lapisan Logika Bisnis di yang kedua (Membuat Lapisan Logika Bisnis). Dimulai dengan tutorial Menampilkan Data Dengan ObjectDataSource , kami melihat cara menggunakan kontrol ObjectDataSource baru ASP.NET 2.0 untuk secara deklaratif antarmuka dengan arsitektur dari lapisan presentasi.
Meskipun semua tutorial sejauh ini telah menggunakan arsitektur untuk bekerja dengan data, dimungkinkan juga untuk mengakses, menyisipkan, memperbarui, dan menghapus data database langsung dari halaman ASP.NET, melewati arsitektur. Melakukannya menempatkan kueri database dan logika bisnis tertentu langsung di halaman web. Untuk aplikasi yang cukup besar atau kompleks, merancang, menerapkan, dan menggunakan arsitektur berjenjang sangat penting untuk keberhasilan, pembaruan, dan pemeliharaan aplikasi. Namun, mengembangkan arsitektur yang kuat mungkin tidak perlu saat membuat aplikasi yang sangat sederhana dan satu kali.
ASP.NET 2.0 menyediakan lima kontrol sumber data bawaan SqlDataSource, AccessDataSource, ObjectDataSource, XmlDataSource, dan SiteMapDataSource. SqlDataSource dapat digunakan untuk mengakses dan memodifikasi data langsung dari database relasional, termasuk Microsoft SQL Server, Microsoft Access, Oracle, MySQL, dan lainnya. Dalam tutorial ini dan tiga berikutnya, kita akan memeriksa cara bekerja dengan kontrol SqlDataSource, mengeksplorasi cara mengkueri dan memfilter data database, serta cara menggunakan SqlDataSource untuk menyisipkan, memperbarui, dan menghapus data.
Gambar 1: ASP.NET 2.0 Menyertakan Lima Kontrol Sumber Data Bawaan
Membandingkan ObjectDataSource dan SqlDataSource
Secara konseptual, kontrol ObjectDataSource dan SqlDataSource hanyalah proksi ke data. Seperti yang dibahas dalam tutorial Menampilkan Data Dengan ObjectDataSource , ObjectDataSource memiliki properti yang menunjukkan jenis objek yang menyediakan data dan metode yang akan dipanggil untuk memilih, menyisipkan, memperbarui, dan menghapus data dari jenis objek yang mendasar. Setelah properti ObjectDataSource dikonfigurasi, kontrol Web data seperti GridView, DetailsView, atau DataList dapat terikat ke kontrol, menggunakan metode ObjectDataSource s Select(), , Insert(), Delete(), dan Update() untuk berinteraksi dengan arsitektur yang mendasar.
SqlDataSource menyediakan fungsionalitas yang sama, tetapi beroperasi terhadap database relasional daripada pustaka objek. Dengan SqlDataSource, kita harus menentukan string koneksi database dan kueri SQL ad-hoc atau prosedur tersimpan untuk dijalankan untuk menyisipkan, memperbarui, menghapus, dan mengambil data. Metode SqlDataSource s Select(), Insert(), Update(), dan Delete() , saat dipanggil, sambungkan ke database yang ditentukan dan terbitkan kueri SQL yang sesuai. Seperti yang diilustrasikan oleh diagram berikut, metode ini melakukan pekerjaan mendengus menyambungkan ke database, mengeluarkan kueri, dan mengembalikan hasilnya.
Gambar 2: SqlDataSource Berfungsi sebagai Proksi ke Database
Catatan
Dalam tutorial ini kita akan fokus pada pengambilan data dari database. Dalam tutorial Menyisipkan, Memperbarui, dan Menghapus Data dengan tutorial Kontrol SqlDataSource, kita akan melihat cara mengonfigurasi SqlDataSource untuk mendukung penyisipan, pembaruan, dan penghapusan.
Kontrol SqlDataSource dan AccessDataSource
Selain kontrol SqlDataSource, ASP.NET 2.0 juga menyertakan kontrol AccessDataSource. Kedua kontrol berbeda ini mengarahkan banyak pengembang baru ke ASP.NET 2.0 untuk menduga bahwa kontrol AccessDataSource dirancang untuk bekerja secara eksklusif dengan Microsoft Access dengan kontrol SqlDataSource yang dirancang untuk bekerja secara eksklusif dengan Microsoft SQL Server. Meskipun AccessDataSource dirancang untuk bekerja secara khusus dengan Microsoft Access, kontrol SqlDataSource berfungsi dengan database relasional apa pun yang dapat diakses melalui .NET. Ini termasuk penyimpanan data yang mematuhi OleDb atau ODBC, seperti Microsoft SQL Server, Microsoft Access, Oracle, Informix, MySQL, dan PostgreSQL, di antara banyak lainnya.
Satu-satunya perbedaan antara kontrol AccessDataSource dan SqlDataSource adalah bagaimana informasi koneksi database ditentukan. Kontrol AccessDataSource hanya memerlukan jalur file ke file database Access. SqlDataSource, di sisi lain, membutuhkan string koneksi lengkap.
Langkah 1: Membuat Halaman Web SqlDataSource
Sebelum kita mulai menjelajahi cara bekerja langsung dengan data database menggunakan kontrol SqlDataSource, mari kita luangkan waktu sejenak terlebih dahulu untuk membuat halaman ASP.NET dalam proyek situs web kita yang akan kita butuhkan untuk tutorial ini dan tiga berikutnya. Mulailah dengan menambahkan folder baru bernama SqlDataSource. Selanjutnya, tambahkan halaman ASP.NET berikut ke folder tersebut Site.master , pastikan untuk mengaitkan setiap halaman dengan halaman master:
Default.aspxQuerying.aspxParameterizedQueries.aspxInsertUpdateDelete.aspxOptimisticConcurrency.aspx
Gambar 3: Tambahkan Halaman ASP.NET untuk Tutorial Terkait SqlDataSource
Seperti di folder lain, Default.aspx di SqlDataSource folder akan mencantumkan tutorial di bagiannya. Ingat bahwa SectionLevelTutorialListing.ascx Kontrol Pengguna menyediakan fungsionalitas ini. Oleh karena itu, tambahkan Kontrol Pengguna ini ke Default.aspx dengan menyeretnya dari Penjelajah Solusi ke tampilan Desain halaman.
Gambar 4: Tambahkan SectionLevelTutorialListing.ascx Kontrol Pengguna ke Default.aspx (Klik untuk melihat gambar ukuran penuh)
Terakhir, tambahkan keempat halaman ini sebagai entri ke Web.sitemap file. Secara khusus, tambahkan markup berikut setelah Menambahkan Tombol Kustom ke DataList dan Repeater <siteMapNode>:
<siteMapNode url="~/SqlDataSource/Default.aspx"
title="Using the SqlDataSource Control"
description="Work directly with database data using the SqlDataSource control.">
<siteMapNode url="~/SqlDataSource/Querying.aspx" title="Retrieving Database Data"
description="Examines how to query data from a database that can then be
displayed through a data Web control."/>
<siteMapNode url="~/SqlDataSource/ParameterizedQueries.aspx"
title="Parameterized Queries"
description="Learn how to specify parameterized WHERE clauses in the
SqlDataSource's SELECT statement." />
<siteMapNode url="~/SqlDataSource/InsertUpdateDelete.aspx"
title="Inserting, Updating, and Deleting Database Data"
description="See how to configure the SqlDataSource to include INSERT, UPDATE,
and DELETE statements." />
<siteMapNode url="~/SqlDataSource/OptimisticConcurrency.aspx"
title="Using Optimistic Concurrency"
description="Explore how to augment the SqlDataSource to include support for
optimistic concurrency." />
</siteMapNode>
Setelah memperbarui Web.sitemap, luangkan waktu sejenak untuk melihat situs web tutorial melalui browser. Menu di sebelah kiri sekarang menyertakan item untuk tutorial pengeditan, penyisipan, dan penghapusan.
Gambar 5: Peta Situs Sekarang Menyertakan Entri untuk Tutorial SqlDataSource
Langkah 2: Menambahkan dan Mengonfigurasi Kontrol SqlDataSource
Mulailah dengan membuka Querying.aspx halaman di SqlDataSource folder dan beralihlah ke tampilan Desain. Seret kontrol SqlDataSource dari Kotak Alat ke Perancang dan atur ID ke ProductsDataSource. Seperti halnya ObjectDataSource, SqlDataSource tidak menghasilkan output yang dirender dan karenanya muncul sebagai kotak abu-abu pada permukaan desain. Untuk mengonfigurasi SqlDataSource, klik tautan Konfigurasi Sumber Data dari tag pintar SqlDataSource.
Gambar 6: Klik Tautan Konfigurasi Sumber Data dari Tag Pintar SqlDataSource
Ini memunculkan wizard Konfigurasi Sumber Data kontrol SqlDataSource. Meskipun langkah-langkah wizard berbeda dari kontrol ObjectDataSource, tujuan akhir sama untuk memberikan detail tentang cara mengambil, menyisipkan, memperbarui, dan menghapus data melalui sumber data. Untuk SqlDataSource, ini memerlukan penentuan database yang mendasar untuk digunakan dan memberikan pernyataan SQL ad-hoc atau prosedur tersimpan.
Langkah panduan pertama meminta database. Daftar drop-down mencakup database yang ditemukan di folder aplikasi App_Data web dan yang telah ditambahkan ke simpul Koneksi Data di Server Explorer. Karena kami telah menambahkan string koneksi untuk NORTHWIND.MDF database di App_Data folder ke file proyek Web.config kami, daftar drop-down menyertakan referensi ke string koneksi tersebut, NORTHWINDConnectionString. Pilih item ini dari daftar drop-down dan klik Berikutnya.
Gambar 7: Pilih NORTHWINDConnectionString dari Daftar Drop-Down
Setelah memilih database, wizard meminta kueri untuk mengembalikan data. Kita dapat menentukan kolom tabel atau tampilan untuk dikembalikan atau dapat memasukkan pernyataan SQL kustom atau menentukan prosedur tersimpan. Anda dapat beralih di antara pilihan ini melalui tentukan pernyataan SQL kustom atau prosedur tersimpan dan Tentukan kolom dari tabel atau lihat tombol radio.
Catatan
Untuk contoh pertama ini, mari kita gunakan opsi Tentukan kolom dari tabel atau tampilan. Kita akan kembali ke wizard nanti dalam tutorial ini dan menjelajahi opsi Tentukan pernyataan SQL kustom atau prosedur tersimpan.
Gambar 8 memperlihatkan layar Konfigurasi Pilih Pernyataan saat tombol radio Tentukan kolom dari tabel atau tampilan dipilih. Daftar drop-down berisi sekumpulan tabel dan tampilan dalam database Northwind, dengan tabel yang dipilih atau kolom tampilan yang ditampilkan dalam daftar kotak centang di bawah ini. Untuk contoh ini, mari kita kembalikan ProductIDkolom , ProductName, dan UnitPrice dari Products tabel. Seperti yang ditunjukkan Gambar 8, setelah membuat pilihan ini, wizard menunjukkan pernyataan SELECT [ProductID], [ProductName], [UnitPrice] FROM [Products]SQL yang dihasilkan .
Gambar 8: Mengembalikan Data dari Products Tabel
Setelah Anda mengonfigurasi wizard untuk mengembalikan ProductIDkolom , , ProductNamedan UnitPrice dari Products tabel, klik tombol Berikutnya. Layar akhir ini memberikan kesempatan untuk memeriksa hasil kueri yang dikonfigurasi dari langkah sebelumnya. Mengklik tombol Uji Kueri menjalankan pernyataan yang dikonfigurasi SELECT dan menampilkan hasilnya dalam kisi.
Gambar 9: Klik tombol Uji Kueri untuk Meninjau Kueri Anda SELECT
Untuk menyelesaikan panduan, klik Selesai.
Seperti objectDataSource, wizard SqlDataSource hanya menetapkan nilai ke properti kontrol, yaitu ConnectionString properti dan SelectCommand . Setelah menyelesaikan wizard, markup deklaratif kontrol SqlDataSource Anda akan terlihat mirip dengan yang berikut ini:
<asp:SqlDataSource ID="ProductsDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:NORTHWNDConnectionString %>"
SelectCommand="SELECT [ProductID], [ProductName], [UnitPrice] FROM [Products]">
</asp:SqlDataSource>
Properti ConnectionString menyediakan informasi tentang cara menyambungkan ke database. Properti ini dapat diberi nilai string koneksi lengkap yang dikodekan secara permanen atau dapat menunjuk ke string koneksi di Web.config. Untuk mereferensikan nilai string koneksi di Web.config, gunakan sintaks <%$ expressionPrefix:expressionValue %>. Biasanya, expressionPrefix<connectionStrings> Namun, sintaks dapat digunakan untuk mereferensikan <appSettings> elemen atau konten dari file sumber daya. Lihat Ringkasan Ekspresi ASP.NET untuk informasi selengkapnya tentang sintaks ini.
Properti SelectCommand menentukan pernyataan SQL ad-hoc atau prosedur tersimpan untuk dijalankan untuk mengembalikan data.
Langkah 3: Menambahkan Kontrol Web Data dan Mengikatnya ke SqlDataSource
Setelah SqlDataSource dikonfigurasi, SqlDataSource dapat terikat ke kontrol Web data, seperti GridView atau DetailsView. Untuk tutorial ini, mari kita tampilkan data dalam GridView. Dari Kotak Alat, seret GridView ke halaman dan ikat ke ProductsDataSource SqlDataSource dengan memilih sumber data dari daftar drop-down di tag pintar GridView.
Gambar 10: Tambahkan GridView dan Ikat ke Kontrol SqlDataSource (Klik untuk melihat gambar ukuran penuh)
Setelah Anda memilih kontrol SqlDataSource dari daftar drop-down di tag pintar GridView, Visual Studio akan secara otomatis menambahkan BoundField atau CheckBoxField ke GridView untuk setiap kolom yang dikembalikan oleh kontrol sumber data. Karena SqlDataSource mengembalikan tiga kolom ProductIDdatabase , , ProductNamedan UnitPrice ada tiga bidang di GridView.
Luangkan waktu sejenak untuk mengonfigurasi GridView tiga BoundFields.
ProductName Ubah properti bidang menjadi HeaderText Nama Produk dan UnitPrice bidang menjadi Harga. Format juga UnitPrice bidang sebagai mata uang. Setelah melakukan modifikasi ini, markup deklaratif GridView Anda akan terlihat mirip dengan yang berikut ini:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataKeyNames="ProductID" DataSourceID="ProductsDataSource"
EnableViewState="False">
<Columns>
<asp:BoundField DataField="ProductID" HeaderText="ProductID"
InsertVisible="False" ReadOnly="True" SortExpression="ProductID" />
<asp:BoundField DataField="ProductName" HeaderText="Product Name"
SortExpression="ProductName" />
<asp:BoundField DataField="UnitPrice" HeaderText="Price"
SortExpression="UnitPrice" DataFormatString="{0:c}"
HtmlEncode="False" />
</Columns>
</asp:GridView>
Kunjungi halaman ini melalui browser. Seperti yang ditunjukkan Gambar 11, GridView mencantumkan setiap produk ProductID, ProductName, dan UnitPrice nilai.
Gambar 11: Tampilan Kisi Menampilkan Setiap Produk , ProductID, ProductNamedan UnitPrice Nilai (Klik untuk melihat gambar ukuran penuh)
Ketika halaman dikunjungi, GridView memanggil metode kontrol Select() sumber datanya. Ketika kita menggunakan kontrol ObjectDataSource, ini disebut ProductsBLL metode kelas s GetProducts() . Namun, dengan SqlDataSource, metode ini Select() membuat koneksi ke database yang ditentukan dan mengeluarkan SelectCommand (SELECT [ProductID], [ProductName], [UnitPrice] FROM [Products], dalam contoh ini). SqlDataSource mengembalikan hasilnya yang kemudian dijumlahkan oleh GridView, membuat baris di GridView untuk setiap rekaman database yang dikembalikan.
Fitur Kontrol Web Data Bawaan dan Kontrol SqlDataSource
Secara umum, fitur yang melekat pada data Web mengontrol penomoran halaman, pengurutan, pengeditan, penghapusan, penyisipan, dan sebagainya khusus untuk kontrol Web data dan tidak bergantung pada kontrol sumber data yang digunakan. Artinya, GridView dapat menggunakan halaman bawaannya, mengurutkan, mengedit, dan menghapus apakah itu terikat ke ObjectDataSource atau SqlDataSource. Namun, fitur kontrol Web data tertentu sensitif terhadap kontrol sumber data yang digunakan atau konfigurasi kontrol sumber data.
Misalnya, dalam tutorial Efisien Penomoran Melalui Data Dalam Jumlah Besar, kami membahas caranya, secara default, logika penomoran halaman untuk kontrol Web data secara naif mengembalikan semua rekaman dari sumber data yang mendasar dan kemudian hanya menampilkan subset rekaman yang sesuai yang diberikan indeks halaman saat ini dan jumlah rekaman yang ditampilkan per halaman. Model ini sangat tidak efisien ketika paging melalui tataan hasil yang cukup besar. Untungnya, ObjectDataSource dapat dikonfigurasi untuk mendukung halaman kustom, yang hanya mengembalikan subset rekaman yang tepat untuk ditampilkan. Kontrol SqlDataSource, bagaimanapun, tidak memiliki properti untuk menerapkan halaman kustom.
Kehalusan lain dengan penomoran dan pengurutan muncul dengan SqlDataSource. Secara default, data yang dikembalikan dari SqlDataSource dapat di-paged atau diurutkan melalui GridView. Untuk menunjukkan hal ini, periksa opsi Aktifkan Penomoran dan Aktifkan Pengurutan di tag pintar GridView di Querying.aspx dan verifikasi bahwa ini berfungsi seperti yang diharapkan.
Pengurutan dan penomoran berfungsi karena SqlDataSource mengambil data database ke dalam Himpunan Data yang diketik secara longgar. Jumlah total rekaman yang dikembalikan oleh kueri aspek penting untuk menerapkan penomoran halaman dapat dipastikan dari Himpunan Data. Selain itu, hasil Himpunan Data dapat diurutkan melalui DataView. Kemampuan ini secara otomatis digunakan oleh SqlDataSource saat GridView meminta halaman atau data yang diurutkan.
SqlDataSource dapat dikonfigurasi untuk mengembalikan DataReader alih-alih DataSet dengan mengubah propertinya DataSourceMode dari DataSet (default) menjadi DataReader. Menggunakan DataReader mungkin lebih disukai dalam situasi saat meneruskan hasil SqlDataSource ke kode yang ada yang mengharapkan DataReader. Selain itu, karena DataReaders adalah objek yang jauh lebih sederhana daripada Himpunan Data, mereka menawarkan performa yang lebih baik. Namun, jika Anda membuat perubahan ini, kontrol Web data tidak dapat mengurutkan atau halaman karena SqlDataSource tidak dapat memastikan berapa banyak rekaman yang dikembalikan oleh kueri, juga tidak menawarkan teknik apa pun untuk mengurutkan data yang dikembalikan.
Langkah 4: Menggunakan Pernyataan SQL Kustom atau Prosedur Tersimpan
Saat mengonfigurasi kontrol SqlDataSource, kueri yang digunakan untuk mengembalikan data dapat ditentukan dalam salah satu dari dua pendekatan sebagai pernyataan SQL kustom atau prosedur tersimpan, atau sebagai kolom dari tabel atau tampilan yang ada. Di Langkah 2 kami memeriksa pemilihan kolom dari Products tabel. Mari kita lihat menggunakan pernyataan SQL kustom.
Tambahkan kontrol GridView lain ke Querying.aspx halaman dan pilih untuk membuat sumber data baru dari daftar drop-down di tag pintar. Selanjutnya, tunjukkan bahwa data akan ditarik dari database, ini akan membuat kontrol SqlDataSource baru. Beri nama kontrol ProductsWithCategoryInfoDataSource.
Gambar 12: Buat Kontrol SqlDataSource Baru Bernama ProductsWithCategoryInfoDataSource
Layar berikutnya meminta kami untuk menentukan database. Seperti yang kita lakukan kembali di Gambar 7, pilih NORTHWINDConnectionString dari daftar drop-down dan klik Berikutnya. Di layar Konfigurasikan Pilih Pernyataan, pilih tombol radio Tentukan pernyataan SQL kustom atau prosedur tersimpan dan klik Berikutnya. Ini akan memunculkan layar Tentukan Pernyataan Kustom atau Prosedur Tersimpan, yang menawarkan tab berlabel SELECT, UPDATE, INSERT, dan DELETE. Di setiap tab, Anda dapat memasukkan pernyataan SQL kustom ke dalam kotak teks atau memilih prosedur tersimpan dari daftar drop-down. Dalam tutorial ini kita akan melihat memasukkan pernyataan SQL kustom; tutorial berikutnya mencakup contoh yang menggunakan prosedur tersimpan.
Gambar 13: Masukkan Pernyataan SQL Kustom atau Pilih Prosedur Tersimpan
Pernyataan SQL kustom dapat dimasukkan dengan tangan ke dalam kotak teks atau dapat dibangun secara grafis dengan mengklik tombol Penyusun Kueri. Dari Pembangun Kueri atau kotak teks, gunakan kueri berikut untuk mengembalikan ProductID bidang dan ProductName dari Products tabel menggunakan JOIN untuk mengambil produk CategoryName dari Categories tabel:
SELECT Products.ProductID, Products.ProductName, Categories.CategoryName
FROM Categories
INNER JOIN Products ON
Categories.CategoryID = Products.CategoryID
Gambar 14: Anda dapat Membuat Kueri Secara Grafis Menggunakan Penyusun Kueri
Setelah menentukan kueri, klik Berikutnya untuk melanjutkan ke layar Uji Kueri. Klik Selesai untuk menyelesaikan wizard SqlDataSource.
Setelah menyelesaikan wizard, GridView akan menambahkan tiga BoundFields ke dalamnya yang ProductIDmenampilkan kolom , ProductName, dan CategoryName yang dikembalikan dari kueri dan menghasilkan markup deklaratif berikut:
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False"
DataKeyNames="ProductID" DataSourceID="ProductsWithCategoryInfoDataSource"
EnableViewState="False">
<Columns>
<asp:BoundField DataField="ProductID" HeaderText="ProductID"
InsertVisible="False" ReadOnly="True" SortExpression="ProductID" />
<asp:BoundField DataField="ProductName" HeaderText="ProductName"
SortExpression="ProductName" />
<asp:BoundField DataField="CategoryName" HeaderText="CategoryName"
SortExpression="CategoryName" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="ProductsWithCategoryInfoDataSource" runat="server"
ConnectionString="<%$ ConnectionStrings:NORTHWNDConnectionString %>"
SelectCommand="
SELECT Products.ProductID, Products.ProductName, Categories.CategoryName
FROM Categories
INNER JOIN Products ON Categories.CategoryID = Products.CategoryID">
</asp:SqlDataSource>
Gambar 15: GridView Menunjukkan Setiap ID Produk, Nama, dan Nama Kategori Terkait (Klik untuk melihat gambar ukuran penuh)
Ringkasan
Dalam tutorial ini kita melihat cara mengkueri dan menampilkan data menggunakan kontrol SqlDataSource. Seperti ObjectDataSource, SqlDataSource berfungsi sebagai proksi, memberikan pendekatan deklaratif untuk mengakses data. Propertinya menentukan database yang akan disambungkan dan kueri SQL SELECT untuk dijalankan; mereka dapat ditentukan melalui jendela Properti atau dengan menggunakan wizard Konfigurasi Sumber Data.
Contoh SELECT kueri yang kami periksa dalam tutorial ini mengembalikan semua rekaman dari kueri yang ditentukan. Kontrol SqlDataSource, namun, dapat menyertakan WHERE klausul dengan parameter yang nilainya ditetapkan secara terprogram atau secara otomatis ditarik dari sumber tertentu. Kami akan memeriksa cara membuat dan menggunakan kueri berparameter dalam tutorial berikutnya!
Selamat Pemrograman!
Bacaan lebih lanjut
Untuk informasi selengkapnya tentang topik yang dibahas dalam tutorial ini, lihat sumber daya berikut:
- Gambaran Umum Kontrol SqlDataSource
- tutorial mulai cepat ASP.NET: Kontrol SqlDataSource
-
Elemen Web.config
<connectionStrings> - Referensi String Koneksi Database
Tentang Penulis
Scott Mitchell, penulis tujuh buku ASP/ASP.NET dan pendiri 4GuysFromRolla.com, telah bekerja sama dengan teknologi Microsoft Web sejak 1998. Scott bekerja sebagai konsultan, pelatih, dan penulis independen. Buku terbarunya adalah Sams Teach Yourself ASP.NET 2.0 dalam 24 Jam. Dia dapat dijangkau di mitchell@4GuysFromRolla.com.
Terima kasih khusus untuk
Seri tutorial ini ditinjau oleh banyak peninjau yang bermanfaat. Peninjau utama untuk tutorial ini adalah Susan Connery, Bernadette Leigh, dan David Suru. Tertarik untuk meninjau artikel MSDN saya yang akan datang? Jika demikian, hubungi saya di mitchell@4GuysFromRolla.com.