Deskripsi kebutuhan umum untuk menemukan data dan objek dalam database
Pencarian untuk data, serta prosedur tersimpan, tabel, dan objek lain dalam database adalah masalah yang agak relevan, termasuk untuk pengembang C #, serta untuk pengembangan .NET secara umum.
Cukup sering, suatu situasi dapat muncul di mana Anda perlu menemukan:
- objek basis data (tabel, tampilan, prosedur tersimpan, fungsi, dll.)
- data (nilai dan di mana tabel berada)
- cuplikan kode dalam definisi objek basis data
Ada banyak solusi siap pakai, baik berbayar maupun gratis.
Pertama, kita akan melihat bagaimana Anda dapat mencari data dan objek dalam database menggunakan alat DBMS
bawaan , dan kemudian kita akan melihat bagaimana melakukan ini menggunakan utilitas
dbForge Search gratis.
Cari menggunakan alat DBMS bawaan
Anda dapat menentukan apakah tabel Karyawan di database menggunakan skrip berikut:
Cari tabel berdasarkan namaselect [object_id], [schema_id], schema_name([schema_id]) as [schema_name], [name], [type], [type_desc], [create_date], [modify_date] from sys.all_objects where [name]='Employee';
Hasilnya bisa seperti ini:

Di sini ditampilkan:
- pengidentifikasi objek dan skema di mana objek berada
- nama sirkuit ini dan nama objek ini
- tipe objek dan deskripsi tipe objek ini
- tanggal dan waktu pembuatan dan modifikasi terakhir dari objek
Untuk menemukan semua kemunculan baris "Proyek", Anda dapat menggunakan skrip berikut:
Cari semua objek dengan substring dalam sebuah nama select [object_id], [schema_id], schema_name([schema_id]) as [schema_name], [name], [type], [type_desc], [create_date], [modify_date] from sys.all_objects where [name] like '%Project%';
Hasilnya bisa seperti ini:

Seperti yang Anda lihat dari hasilnya, di sini substring "Project" tidak hanya berisi dua tabel Project dan ProjectSkill, tetapi juga beberapa kunci primer dan asing.
Untuk memahami siapa sebenarnya kunci-kunci ini milik, kami menambahkan ke output bidang parent_object_id dan namanya dan skema di mana ia berada sebagai berikut:
Cari semua objek dengan substring dalam nama dengan output dari objek induk select ao.[object_id], ao.[schema_id], schema_name(ao.[schema_id]) as [schema_name], ao.parent_object_id, p.[schema_id] as [parent_schema_id], schema_name(p.[schema_id]) as [parent_schema_name], p.[name] as [parent_name], ao.[name], ao.[type], ao.[type_desc], ao.[create_date], ao.[modify_date] from sys.all_objects as ao left outer join sys.all_objects as p on ao.[parent_object_id]=p.[object_id] where ao.[name] like '%Project%';
Hasilnya akan berupa tabel dengan informasi terperinci tentang objek induk, yaitu di mana kunci utama dan asing didefinisikan:

Objek sistem berikut ini digunakan dalam kueri:
Jadi, kami menemukan cara menemukan objek dalam database menggunakan alat DBMS bawaan.
Sekarang kami menunjukkan bagaimana menemukan data dalam database menggunakan contoh pencarian string.
Untuk menemukan nilai string untuk semua tabel database, Anda bisa menggunakan
solusi berikut. Kami menyederhanakan solusi ini dan menunjukkan bagaimana Anda dapat menemukan, misalnya, nilai "Ramiro" menggunakan skrip berikut:
Cari nilai string dengan substring di semua tabel database set nocount on declare @name varchar(128), @substr nvarchar(4000), @column varchar(128) set @substr = '%Ramiro%' declare @sql nvarchar(max); create table
Hasil dari eksekusi mungkin seperti ini:

Nama tabel ditampilkan di sini dan di mana kolom nilai yang mengandung "Ramiro" substring disimpan. Serta jumlah input dari substring ini ditemukan untuk pasangan tabel-kolom yang ditemukan.
Untuk menemukan objek dalam definisi yang ada potongan kode, Anda dapat menggunakan tampilan sistem berikut:
- sys.sql_modules
- sys.all_sql_modules
- sys.syscomments
Misalnya, menggunakan tampilan terakhir, Anda dapat menggunakan skrip berikut untuk menemukan semua objek dalam definisi yang ditemukan potongan kode:
Cari cuplikan kode dalam definisi objek basis data select obj.[object_id], obj.[name], obj.[type_desc], sc.[text] from sys.syscomments as sc inner join sys.objects obj on sc.[id]=obj.[object_id] where sc.[text] like '%code snippet%';
Identifier, nama, deskripsi, dan definisi penuh dari objek akan ditampilkan di sini.
Cari dengan Utilitas Pencarian dbForge gratis
Namun, lebih mudah untuk mencari menggunakan alat yang bagus dan siap pakai. Salah satu alat tersebut adalah
Pencarian dbForge .
Untuk memanggil utilitas ini di jendela
SSMS, klik tombol

.
Kotak pencarian berikut akan muncul:

Perhatikan panel atas (dari kiri ke kanan):
- Anda dapat mengganti mode pencarian (mencari DDL (objek) atau data)
- langsung apa yang kita cari (yang substring)
- apakah peka huruf besar-kecil, mencari pencocokan kata yang tepat, mencari kejadian:

- hasil kelompok berdasarkan jenis objek - tombol

- pilih jenis objek yang diperlukan untuk dicari:

- Anda juga dapat menentukan beberapa basis data untuk mencari dan memilih contoh MS SQL Server
Ini semua dalam mode pencarian objek, yaitu ketika DDL diaktifkan:

Dalam mode pencarian data, hanya pilihan jenis objek yang akan berubah:

Yaitu, hanya tabel yang akan tersedia untuk seleksi, tempat data itu sendiri disimpan:

Sekarang, seperti sebelumnya, kita akan menemukan semua kemunculan substring "Project" dalam nama-nama objek:

Seperti yang Anda lihat, mode pencarian untuk objek DDL dipilih, itu diisi bahwa kita sedang mencari garis "Proyek", sisanya semuanya secara default.
Saat menyorot objek yang ditemukan, kode definisi objek ini atau seluruh objek induknya ditampilkan di bawah ini.
Anda juga dapat memindahkan navigasi ke objek yang ditemukan dengan mengklik tombol

:

Anda juga dapat mengelompokkan objek yang ditemukan berdasarkan tipenya:

Harap dicatat bahwa bahkan tabel tersebut ditampilkan di mana ada bidang yang namanya mengandung "Proyek" substring. Namun, ingat bahwa mode pencarian dapat diubah: untuk mencari kepatuhan penuh / sebagian / case sensitif atau tidak.
Sekarang kita menemukan nilai "Ramiro" di semua tabel:

Perhatikan bahwa semua baris yang berisi substring "Ramiro" dari tabel Karyawan yang dipilih ditampilkan di bawah ini.
Anda juga dapat memindahkan navigasi ke objek yang ditemukan dengan menekan tombol seperti sebelumnya

:

Dengan demikian kita dapat mencari objek dan data yang diperlukan dalam database.
Kesimpulan
Cara untuk mencari data itu sendiri dan objek dalam database diperiksa menggunakan alat
bawaan dari MS SQL Server DBMS itu sendiri dan menggunakan utilitas
dbForge Search gratis.
Devart juga memiliki sejumlah solusi siap pakai gratis lainnya, daftar lengkapnya dapat ditemukan di
sini .
Sumber