Tutorial SQL Server - Semua yang Anda Butuhkan untuk Menguasai Transact-SQL



Artikel Tutorial SQL Server ini adalah panduan lengkap tentang berbagai konsep, sintaksis, dan perintah yang digunakan di MS SQL Server.

Di pasar saat ini, di mana sejumlah besar data dihasilkan setiap hari, sangat penting untuk memahami cara menangani data. SQL Server adalah lingkungan terintegrasi yang dikembangkan oleh Microsoft untuk menangani data.Dalam artikel tutorial SQL Server ini, Anda akan mempelajari semua operasi dan perintah yang Anda perlukan untuk menjelajahi database Anda.

Untuk pemahaman Anda yang lebih baik, saya telah membagi blog ke dalam kategori berikut:





Perintah Deskripsi

Perintah Bahasa Definisi Data (DDL)

Kumpulan perintah ini digunakan untuk mendefinisikan database.

Perintah Bahasa Manipulasi Data (DML)



Perintah manipulasi digunakan untuk memanipulasi data yang ada dalam database.

Perintah Bahasa Kontrol Data (DCL)

Kumpulan perintah ini menangani izin, hak, dan kontrol lain dari sistem database.

Perintah Transaction Control Language (TCL)

Perintah-perintah ini digunakan untuk menangani transaksi database.

Selain perintah, topik berikut ini tercakup dalam artikel ini:



MS SQL Server - Tutorial SQL Server - Edureka

  1. Apa itu SQL Server?
  2. Instal SQL Server
  3. Hubungkan ke SQL Server menggunakan SSMS
  4. Akses Mesin Database
  5. Arsitektur SQL Server
  6. Komentar di SQL
  7. Tipe Data SQL Server
  8. Kunci dalam database
  9. Batasan dalam database
  10. Operator
  11. Fungsi Agregat
  12. Fungsi yang Ditentukan Pengguna
  13. Kueri Bertingkat
  14. Bergabung
  15. Loop
  16. Prosedur Tersimpan
  17. Penanganan Pengecualian

***CATATAN*** Dalam Tutorial SQL Server ini, saya akan menganggap database di bawah ini sebagaisebuah contoh, untuk menunjukkan kepada Anda bagaimana belajar dan menulisperintah.

Identitas Siswa Nama siswa Nama orang tua Nomor telepon Alamat Kota Negara
satuAku benciAkriti mehra9955339966Brigade Road Block 9HyderabadIndia
2ManasaShourya Sharma9234568762Jalan Mayo 15KolkataIndia
3AnaySoumya Mishra9876914261Marathalli House No 101BengaluruIndia
4PreetiRohan Sinha9765432234Queens Road 40DelhiIndia
5ShanayaAbhinay agarwal9878969068Jalan Oberoi 21MumbaiIndia

Sebelum kita mulai memahami berbagai perintah yang digunakan di SQL Server, mari kita pahami apa itu SQL Server, arsitekturnya, dan cara menginstalnya.

Apa itu SQL Server?

Microsoft SQL Server adalah sebuah relasional sistem manajemen database . Ini mendukung Bahasa Kueri Terstruktur dan hadir dengan implementasi sendiri dari bahasa SQL yaitu Transact-SQL (T-SQL) . Ini memiliki lingkungan terintegrasi untuk menangani database SQL, yaitu .

Komponen utama SQL Server adalah sebagai berikut:

  • Mesin Database: Komponen ini menangani penyimpanan, Pemrosesan Transaksi Cepat, dan Mengamankan Data.
  • SQL Server - Layanan ini digunakan untuk memulai, menghentikan, menghentikan sementara dan melanjutkan contoh MS SQL Server.
  • Agen Server SQL - Layanan Agen Server memainkan peran penjadwal tugas dan dipicu oleh peristiwa apa pun atau sesuai kebutuhan.
  • Browser SQL Server - Layanan ini digunakan untuk menghubungkan permintaan masuk ke instance SQL Server yang diinginkan.
  • Pencarian Teks Lengkap SQL Server - Digunakan untuk membiarkan pengguna menjalankan kueri teks lengkap terhadap data karakter dalam tabel SQL.
  • Penulis SQL Server VSS - Memungkinkan pencadangan dan pemulihan file data saat SQL Server tidak berjalan.
  • Layanan Analisis SQL Server (SSAS) - Layanan ini digunakan untuk menyediakan analisis data, data mining dan kemampuan. SQL Server juga terintegrasi dengan dan R untuk analisis data tingkat lanjut.
  • Layanan Pelaporan SQL Server (SSRS) - Seperti namanya, layanan ini digunakan untuk menyediakan fitur dan kemampuan pengambilan keputusan termasuk integrasi dengan .
  • Layanan integrasi SQL Server (SSIS) - Layanan ini digunakan untuk melakukan operasi ETL untuk berbagai jenis data dari berbagai sumber data.

Sekarang, setelah Anda mengetahui apa itu MS SQL Server, mari kita lanjutkan ke artikel tentang tutorial SQL Server ini dan memahami cara menginstal dan mengatur SQL Server.

Instal SQL Server

Ikuti langkah-langkah di bawah ini untuk menginstal SQL Server:

Langkah 1: Buka halaman resmi Unduhan Microsoft SQL Server , di mana Anda akan menemukan opsi untuk menginstal SQL Server baik di lokal maupun di cloud.

Langkah 2: Sekarang, gulir ke bawah dan Anda akan melihat dua opsi: Edisi Pengembang & Perusahaan . Di sini, saya akan mengunduh file Edisi pengembang . Untuk mengunduh, Anda hanya perlu mengklik Unduh sekarang pilihan. Lihat di bawah.

Langkah 3: Setelah aplikasi diunduh, klik dua kali pada file tersebut dan Anda akan melihat jendela berikut.

Langkah 4: Sekarang, Anda dapat memilih salah satu dari 3 opsi untuk menyiapkan SQL Server. Di sini, saya hanya akan memilih Opsi dasar . Saat memilih opsi tipe instalasi, layar berikutnya adalah menerima perjanjian lisensi. Untuk melakukan itu, klik Menerima di jendela berikut.

Langkah 5: Selanjutnya, Anda harus menentukan lokasi penginstalan SQL Server. Kemudian, Anda harus mengklik Instal.

Setelah Anda mengklik Install , Anda akan melihat bahwa paket yang dibutuhkan sedang diunduh. Sekarang, setelah penginstalan selesai, Anda akan melihat layar berikut:

Di sini, Anda dapat melanjutkan dan mengklik Hubungkan Sekarang, atau Anda dapat menyesuaikan penginstalan. Untuk pemahaman Anda yang lebih baik, saya akan maju dan memilih Sesuaikan.

Langkah 6: Setelah Anda mengklik Sesuaikan di jendela di atas, Anda akan melihat wizard berikut terbuka. di jendela berikut, klik Lanjut.

Langkah 7: Setelah aturan terinstal secara otomatis, klik Lanjut . Lihat di bawah.

Langkah 8: Selanjutnya, Anda harus memilih jenis instalasi. Jadi, pilih file Lakukan a penginstalan baru SQL Server 2017 opsi dan kemudian klik Lanjut.

Langkah 9: Di wizard yang terbuka, pilih edisi: Pengembang. Kemudian, klik Lanjut . Lihat di bawah.

Langkah 10: Sekarang, baca dan terima perjanjian lisensi dengan check-in di tombol radio dan kemudian klik Lanjut . Lihat di bawah.

Langkah 11: Pada wizard di bawah ini Anda dapat memilih fitur-fitur yang ingin Anda instal. Selain itu, Anda dapat memilih direktori root instance dan kemudian mengklik Lanjut . Di sini, saya akan memilih Layanan Mesin Database .

Langkah 12: Selanjutnya Anda harus memberi nama instance, dan secara otomatis ID instance akan dibuat. Di sini, saya akan menamai instance “edureka”. Kemudian, klik Lanjut.

Langkah 13: Di wizard Konfigurasi Server, klik Lanjut .

Langkah 14: Sekarang, Anda harus mengaktifkan mode otentikasi. Di sini, Anda akan melihat Mode otentikasi Windows dan Mode Campuran . Saya akan memilih Mode Campuran. Kemudian, sebutkan kata sandi dan kemudian saya akan menambahkan pengguna saat ini sebagai Admin dengan memilih Tambahkan Pengguna Saat Ini pilihan.

Langkah 15: Kemudian, pilih jalur file konfigurasi dan klik Install .

Setelah penginstalan selesai, Anda akan melihat layar berikut:

Hubungkan ke SQL Server menggunakan SSMS

Setelah SQL Server diinstal, langkah Anda selanjutnya adalah menyambungkan SQL Server ke SQL Server Management Studio. Untuk melakukan itu ikuti langkah-langkah di bawah ini:

Langkah 1: Kembali, ke jendela berikut, dan klik instal SSMS pilihan.

Langkah 2: Setelah Anda mengklik opsi itu, Anda akan diarahkan ke halaman berikut , di mana Anda harus memilih Unduh SSMS.

Langkah 3: Setelah pengaturan diunduh, klik dua kali pada aplikasi dan Anda akan melihat wizard berikut terbuka.

Langkah 4: Klik Instal opsi , di jendela di atas dan Anda akan melihat bahwa penginstalan akan dimulai.

Langkah 5: Setelah penginstalan selesai Anda akan mendapatkan kotak dialog seperti gambar di bawah ini.

Setelah Anda menginstal SSMS, langkah selanjutnya adalah mengakses file Mesin Database .

Mengakses Mesin Database

Saat Anda membuka file Studio manajemen server SQL dari menu mulai , sebuah jendela akan terbuka seperti jendela yang ditunjukkan pada gambar di bawah.

Di sini, sebutkan Nama Server, Mode Otentikasi dan klik Menghubung.

Setelah Anda mengklik Menghubung , Anda akan melihat layar berikut.

Begitulah cara Anda menginstal dan mengatur SQL Server. Sekarang, bergerak maju dalam tutorial SQL Server ini, mari kita memahami berbagai komponen arsitektur SQL Server.

Arsitektur SQL Server

Arsitektur SQL Server adalah sebagai berikut:

  • Server & minus Di sinilah layanan SQL diinstal dan database berada
  • Mesin Relasional & minus Berisi query parser, optimizer, dan eksekutor dan eksekusi terjadi di mesin relasional.
  • Parser Perintah & minus Memeriksa sintaks kueri dan mengubah kueri ke bahasa mesin.
  • Pengoptimal & minus Mempersiapkan rencana eksekusi sebagai keluaran dengan mengambil statistik, kueri dan pohon Algebrator sebagai masukan.
  • Pelaksana Kueri & minus Ini adalah tempat di mana kueri dijalankan langkah demi langkah
  • Mesin Penyimpanan & minus Ini bertanggung jawab untuk penyimpanan dan pengambilan data pada sistem penyimpanan, manipulasi data, pengelolaan dan penguncian transaksi.

Sekarang, setelah Anda mengetahui cara menyiapkan dan menginstal SQL Server dan berbagai komponennya, mari kita mulai dengan menulis Server. Tapi, sebelumnya izinkan saya membahas cara menulis komentar di SQL Server.

Komentar di SQL Server

Ada dua cara untuk berkomentar dalam SQL, yaitu menggunakan s komentar ingle-line atau m komentar ulti-line .

Komentar Baris Tunggal

Komentar satu baris dimulai dengan dua tanda hubung (-). Oleh karena itu, teks yang disebutkan setelah (-), hingga akhir baris tunggal akan diabaikan oleh kompilator.

Contoh:

--Contoh komentar baris tunggal

Komentar Multi-Baris

Komentar beberapa baris dimulai dengan / * dan diakhiri dengan * / . Makanya, teks disebutkan di antara / * dan * / akan diabaikan oleh kompilator.

Contoh:

/ * Contoh untuk komentar banyak baris * /

Sekarang di artikel tutorial SQL Server ini, mari kita mulai dengan kumpulan perintah pertama yaitu perintah Bahasa Definisi Data.

Perintah Bahasa Definisi Data

Bagian artikel ini akan memberi Anda gambaran tentang perintah dengan bantuan yang Anda dapat menentukan database Anda. Perintahnya adalah sebagai berikut:

MEMBUAT

Pernyataan ini digunakan untuk membuat tabel, database atau tampilan.

Pernyataan ‘BUAT DATABASE’

Pernyataan ini digunakan untuk membuat database.

Sintaksis

BUAT DATABASE DatabaseName

Contoh

BUAT DATABASE Siswa

' BUAT TABEL 'Pernyataan

Seperti namanya, statement ini digunakan untuk membuat tabel.

Sintaksis

BUAT TABEL Nama Tabel (Jenis data Kolom1, Jenis data Kolom2, Jenis data Kolom3, .... Jenis data KolomN)

Contoh

BUAT TABEL StudentInfo (StudentID int, StudentName varchar (8000), ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000), City varchar (8000), Country varchar (8000))

PENURUNAN

Pernyataan ini digunakan untuk menghapus tabel, database, atau tampilan yang ada.

Pernyataan ‘DROP DATABASE’

Pernyataan ini digunakan untuk menghapus database yang ada. Informasi lengkap yang ada dalam database akan hilang segera setelah Anda menjalankan perintah di bawah ini.

Sintaksis

DROP DATABASE DatabaseName

Contoh

DROP DATABASE Siswa

Pernyataan 'DROP TABLE'

Pernyataan ini digunakan untuk menjatuhkan tabel yang sudah ada. Informasi lengkap yang ada di tabel akan hilang segera setelah Anda menjalankan perintah di bawah ini.

Sintaksis

DROP TABLE TableName

Contoh

DROP TABLE StudentInfo

USIA

Perintah ALTER digunakan untuk menambah, menghapus atau mengubah kolom atau batasan dalam tabel yang sudah ada.

' ALTER TABLE 'Pernyataan

Pernyataan ini digunakan untuk menambah, menghapus, mengubah kolom dalam tabel yang sudah ada sebelumnya.

Pernyataan 'ALTER TABLE' dengan ADD / DROP COLUMN

Pernyataan ALTER TABLE digunakan dengan perintah ADD / DROP Column untuk menambah dan menghapus kolom.

Sintaksis

ALTER TABLE TableName ADD ColumnName Datatype ALTER TABLE TableName DROP COLUMN ColumnName

Contoh

--TAMBAHKAN Kolom BloodGroup: ALTER TABLE StudentInfo ADD BloodGroup varchar (8000) --DROP Kolom BloodGroup: ALTER TABLE StudentInfo DROP COLUMN BloodGroup

Pernyataan 'ALTER TABLE' dengan ALTER COLUMN

Pernyataan ALTER TABLE dapat digunakan dengan kolom ALTER untuk mengubah tipe data dari kolom yang ada dalam tabel.

Sintaksis

ALTER TABLE TableName ALTER COLUMN ColumnName Datatype

Contoh

--Tambahkan DOB kolom dan ubah tipe data dari tanggal ke waktu. ALTER TABLE StudentInfo TAMBAH DOB date ALTER TABLE StudentInfo ALTER COLUMN DOB datetime

MEMOTONG

Perintah SQL ini digunakan untuk menghapus informasi yang ada di tabel tetapi tidak menghapus tabel itu sendiri. Jadi, jika Anda ingin menghapus informasi yang ada di tabel, dan tidak menghapus tabel itu sendiri, Anda harus menggunakan perintah TRUNCATE. Lain, gunakan perintah DROP.

Sintaksis

Pangkas Nama Tabel Tabel

Contoh

TRUNCATE TABLE StudentInfo

GANTI NAMA

Pernyataan ini digunakan untuk mengganti nama satu atau lebih tabel.

Sintaksis

sp_rename 'OldTableName', 'NewTableName'

Contoh

sp_rename 'StudentInfo', 'Infostudents'

Lanjut ke artikel tutorial SQL Server ini, mari kita pahami berbagai tipe data yang didukung oleh SQL Server.

Tipe Data SQL Server

Kategori Jenis Data Nama Tipe Data Deskripsi Rentang / Sintaks
Angka yang tepat numerikDigunakan untuk menyimpan nilai numerik dan memiliki presisi tetap dan nomor skala- 10 ^ 38 +1 hingga 10 ^ 38 - 1.
tinyintDigunakan untuk menyimpan nilai integer0 sampai 255
smallintDigunakan untuk menyimpan nilai integer-2 ^ 15 (-32,768) hingga 2 ^ 15-1 (32,767)
bigintDigunakan untuk menyimpan nilai integer-2 ^ 63 (-9,223,372,036,854,775,808) menjadi 2 ^ 63-1 (9,223,372,036,854,775,807)
intDigunakan untuk menyimpan nilai integer-2 ^ 31 (-2,147,483,648) menjadi 2 ^ 31-1 (2,147,483,647)
sedikitMenyimpan tipe data integer yang menceritakan nilai 0, 1 atau NULL0, 1, atau NULL
desimalDigunakan untuk menyimpan nilai numerik dan memiliki presisi tetap dan nomor skala- 10 ^ 38 +1 hingga 10 ^ 38 - 1.
uang kecilDigunakan untuk menyimpan uangatau nilai mata uang.- 214.748.3648 hingga 214.748.3647
uangDigunakan untuk menyimpan uangatau nilai mata uang.-922,337,203,685,477.5808 hingga 922,337,203,685,477.5807 (-922,337,203,685,477.58
ke 922.337.203.685.477,58 untuk Informatica.
Perkiraan numerik mengapungDigunakan untuk menyimpan data numerik floating-point- 1.79E + 308 hingga -2.23E-308, 0 dan 2.23E-308 hingga 1.79E + 308
nyataDigunakan untuk menyimpan data numerik floating-point- 3.40E + 38 hingga -1.18E - 38, 0 dan 1.18E - 38 hingga 3.40E + 38
Tanggal dan waktu tanggalDigunakan untuk menentukan tanggal di SQL Server.Sintaks: tanggal
smalldatetimeDigunakan untuk menentukan tanggal yang digabungkan dengan waktu yang waktunya didasarkan pada 24 jam sehari, dengan detik selalu nol (: 00) dan tanpa pecahan detik.Sintaks: smalldatetime
tanggal WaktuDigunakan untuk menentukan tanggal yang digabungkan dengan waktu dalam sehari dengan pecahan detik berdasarkan format 24 jam.Sintaks: datetime
datetime2 datetime2 adalah sebagai perpanjangan dari yang sudah ada tanggal Waktu jenis yang memiliki presisi pecahan default lebih besar, rentang tanggal lebih besar.Sintaks: datetime2
datetimeoffsetDigunakan untuk menentukan tanggal yang digabungkan dengan waktu dalam sehari yang memiliki kesadaran zona waktu. Ini didasarkan pada waktu 24 jam.Sintaks: datetimeoffset
waktuDigunakan untuk menentukan waktu dalam sehari.Sintaks: waktu
String karakter arangDigunakan untuk menyimpan karakter berukuran tetap.arang[( n )] di mana nilai n bervariasi dari 1 - 8.000
varchar.dllDigunakan untuk menyimpan karakter dengan panjang variabel.varchar [( n | maks)] di mana nilai n bervariasi dari 1-8000 dan penyimpanan maksimum yang diperbolehkan adalah 2GB.
teksDigunakan untuk menyimpan vdata non-Unicode panjang-ariablePanjang string maksimum yang diperbolehkan - 2 ^ 31-1 (2.147.483.647)
String karakter unicode ncharDigunakan untuk menyimpan karakter berukuran tetap.nchar[(n)] di mana nilai n bervariasi dari 1-4000
nvarchar.dllDigunakan untuk menyimpan karakter dengan panjang variabel.varchar [( n | maks)] di mana nilai n bervariasi dari 1-4000 dan penyimpanan maksimum yang diizinkan adalah 2GB.
ntextDigunakan untuk menyimpan data Unicode dengan panjang variabelPanjang string maksimum yang diperbolehkan - 2 ^ 30-1 (2.147.483.647)
String biner binerDigunakan untuk menyimpan tipe data biner dengan panjang tetapbiner[( n )] di mana nilai n bervariasi dari 1 - 8.000
varbinaryDigunakan untuk menyimpan tipe data biner dengan panjang tetapvarbinary[( n )] di mana n vale bervariasi dari 1-8000 dan penyimpanan maksimum yang diizinkan adalah 2 ^ 31-1 byte.
gambarDigunakan untuk menyimpan data biner dengan panjang variabel0 - 2 ^ 31-1 (2.147.483.647) byte
Tipe data lainnya Ini adalah tipe data untuk prosedur tersimpan atau variabel OUTPUT parameter yang berisi referensi ke kursor.-
rowversionDigunakan untuk mengekspos bilangan biner unik yang dibuat secara otomatis dalam database.-
hierarchyidDigunakan untuk mewakili posisi dalam hierarki.-
pengenal unikAdalah GUID 16-byte.Sintaksis:pengenal unik
sql_variantDigunakan untuk menyimpan nilai dari berbagai tipe data yang didukung SQL ServerSintaks: sql_variant
xmlDigunakan untuk menyimpan tipe data XML.

xml ([KONTEN | DOKUMEN] xml_schemacollection)

Jenis Geometri SpasialDigunakan untuk merepresentasikan data dalam sistem koordinat Euclidean (datar).-
Jenis Geografi SpasialDigunakan untuk menyimpan data ellipsoidal (bumi bulat), seperti koordinat lintang dan bujur GPS.-
mejaDigunakan untuk menyimpan kumpulan hasil untuk diproses di lain waktu-

Selanjutnya, pada artikel ini mari kita pahami berbagai jenis kunci dan batasan dalam database.

Berbagai Jenis Kunci Dalam Database

Berikut ini adalah berbagai jenis kunci yang digunakan dalam database:

  • Kunci Kandidat - Kunci Kandidat adalah sekumpulan atribut yang dapat mengidentifikasi tabel secara unik. Sebuah tabel dapat memiliki lebih dari satu kunci kandidat, dan dari kunci kandidat yang dipilih, satu kunci dipilih sebagai Kunci Utama.
  • Super Key - Himpunan atribut dapat secara unik mengidentifikasi tupel. Jadi, kunci kandidat, kunci unik, dan kunci utama adalah kunci super, tetapi sebaliknya tidak benar.
  • Kunci utama - Kunci utama digunakan untuk mengidentifikasi setiap tupel secara unik.
  • Kunci Alternatif - Kunci Alternatif adalah kunci kandidat yang tidak dipilih sebagai kunci Primer.
  • Kunci Unik- Kunci unik mirip dengan kunci utama, tetapi mengizinkan satu nilai NULL di kolom.
  • Kunci asing - Atribut yang hanya dapat mengambil nilai yang ada sebagai nilai dari beberapa atribut lainnya, adalah kunci asing ke atribut yang dirujuknya.
  • Kunci Komposit- Kunci komposit adalah kombinasi dari dua atau lebih kolom yang mengidentifikasi setiap tupel secara unik.

Batasan yang Digunakan Dalam Database

Batasan digunakan dalam database untuk menentukan aturan untuk data yang disimpan dalam tabel. Berbagai jenis kendala dalam SQL adalah sebagai berikut:

NOT NULL

Batasan NOT NULL memastikan bahwa kolom tidak dapat memiliki nilai NULL.

Contoh

BUAT TABEL StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000)) --NOT NULL pada ALTER TABLE ALTER TABLE StudentsInfo ALTER COLUMN PhoneNumber int NOT NULL

UNIK

Batasan ini memastikan bahwa semua nilai dalam kolom adalah unik.

Contoh

--UNIQUE pada Buat Tabel CREATE TABLE StudentsInfo (StudentID int NOT NULL UNIQUE, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar ( 8000)) --UNIQUE pada Beberapa Kolom BUAT TABEL StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000) CONSTRAINT UC_Student_Info UNIQUE (StudentID, PhoneNumber)) --UNIQUE di ALTER TABLE ALTER TABLE StudentsInfo ADD UNIQUE (StudentID) --Untuk menghilangkan kendala UNIQUE ALTER TABLE StudentsInfo DROP CONSTRAINT UC_Student_Info

MEMERIKSA

Batasan PERIKSA memastikan bahwa semua nilai dalam kolom memenuhi kondisi tertentu.

Contoh

--CHECK Batasan pada CREATE TABLE CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar ( 8000) CHECK (Country = 'India')) --CHECK Constraint pada beberapa kolom CREATE TABLE StudentsInfo (StudentID int NOT NULL, StudentName varchar8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000) CHECK (Country = 'India' AND City = 'Hyderabad')) --CHECK Constraint on ALTER TABLE ALTER TABLE StudentsInfo ADD CHECK (Country = 'India') --Untuk memberikan nama untuk PERIKSA Kendala ALTER TABLE StudentsInfo TAMBAHKAN CONSTRAINT CheckConstraintName CHECK (Negara = 'India') --Untuk menghapus CHECK Batasan ALTER TABLE StudentsInfo DROP CONSTRAINT CheckConstraintName

DEFAULT

Batasan DEFAULT terdiri dari sekumpulan nilai default untuk kolom saat tidak ada nilai yang ditentukan.

Contoh

- Batasan DEFAULT pada CREATE TABLE BUAT TABEL StudentsInfo (StudentID int, StudentName varchar (8000) NOT NULL, ParentName varchar (8000), PhoneNumber int, AddressofStudent varchar (8000) NOT NULL, City varchar (8000), Country varchar (8000) DEFAULT 'India') --DEFAULT Constraint on ALTER TABLE ALTER TABLE StudentsInfo TAMBAHKAN KONSTRAIN defau_Country DEFAULT 'India' FOR Country --Untuk menghapus Batasan Default ALTER TABLE StudentsInfo ALTER COLUMN Country DROP defau_Country

INDEKS

Itu Batasan INDEX digunakan untuk membuat indeks dalam tabel, di mana Anda dapat membuat dan mengambil data dari database dengan sangat cepat.

Sintaksis

--Membuat Indeks di mana nilai duplikat diperbolehkan BUAT INDEKS IndexName ON TableName (Column1, Column2, ... ColumnN) --Buat Indeks di mana nilai duplikat tidak diperbolehkan BUAT INDEKS UNIK IndexName ON TableName (Column1, Column2, ... KolomN)

Contoh

BUAT INDEKS idex_StudentName ON StudentsInfo (StudentName) --Untuk menghapus indeks dalam tabel DROP INDEX StudentsInfo.idex_StudentName

Melanjutkan artikel ini tentang tutorial SQL Server, mari kita sekarang memahami berbagai perintah Bahasa Manipulasi Data yang digunakan di Microsoft SQL Server.

Perintah Bahasa Manipulasi Data

Bagian artikel ini akan membahas semua perintah yang dapat digunakan untuk memanipulasi database. Perintahnya adalah sebagai berikut:

Selain perintah-perintah ini, terdapat juga operator / fungsi manipulatif lainnya seperti:

MENGGUNAKAN

Pernyataan ini digunakan untuk memilih database untuk mulai melakukan berbagai operasi padanya.

Sintaksis

GUNAKAN DatabaseName

Contoh

GUNAKAN Siswa

MASUKKAN KE DALAM

Itu INSERT INTO pernyataan digunakan untuk memasukkan record baru ke dalam tabel yang sudah ada.

Sintaksis

INSERT INTO TableName (Column1, Column2, Column3, ..., ColumnN) VALUES (value1, value2, value3, ...) --Jika Anda tidak ingin menyebutkan nama kolom maka gunakan sintaks di bawah ini INSERT INTO TableName VALUES (Nilai1, Nilai2, Nilai3, ...)

Contoh

INSERT INTO StudentsInfo (StudentID, StudentName, ParentName, PhoneNumber, AddressofStudent, City, Country) VALUES ('06', 'Sanjana', 'Kapoor', '9977331199', 'Buffalo Street House No 10', 'Kolkata', 'India ') INSERT INTO StudentsInfo VALUES (' 07 ',' Vishal ',' Mishra ',' 9876509712 ',' Nice Road 15 ',' Pune ',' India ')

MEMPERBARUI

Pernyataan UPDATE digunakan untuk mengubah atau memperbarui catatan yang sudah ada di tabel.

Sintaksis

UPDATE TableName SET Kolom1 = Nilai1, Kolom2 = Nilai2, ... DI MANA Kondisi

Contoh

UPDATE StudentsInfo SET StudentName = 'Aahana', Kota = 'Ahmedabad' WHERE StudentID = 1

MENGHAPUS

Pernyataan DELETE digunakan untuk menghapus rekaman yang ada dalam tabel.

Sintaksis

HAPUS DARI Nama Tabel WHERE Kondisi

Contoh

HAPUS DARI StudentsInfo WHERE StudentName = 'Aahana'

PERGILAH

Pernyataan MERGE digunakan untuk melakukan operasi INSERT, UPDATE dan DELETE pada tabel tertentu, di mana tabel sumber disediakan. Lihat di bawah.

Sintaksis

GABUNGKAN TagretTableName MENGGUNAKAN SourceTableName PADA MergeCondition KETIKA SESUAI LALU Update_Statement KETIKA TIDAK SESUAI MAKA Sisipkan_Statement KETIKA TIDAK SESUAI DENGAN SUMBER LALU HAPUS

Contoh

Untuk memahami pernyataan MERGE, pertimbangkan tabel berikut sebagai tabel Sumber dan tabel Target.

Tabel Sumber:

Identitas Siswa Nama siswa Tanda
satuAku benci87
2Manasa92
4Anay74

Tabel Target:

Identitas Siswa Nama siswa Tanda
satuAku benci87
2Manasa67
3Saurabh55
GABUNGKAN TARGET SampleTargetTable MENGGUNAKAN SampleSourceTable SOURCE ON (TARGET.StudentID = SOURCE.StudentID) KETIKA SESUAI DAN TARGET.StudentName SOURCE.StudentName ATAU TARGET.Marks SOURCE.Marks MAKA UPDATE SET TARGET.Marks = SOURCE.StudentName = SOURCE.StudentName = SOURCE.StudentName KETIKA TIDAK SESUAI DENGAN TARGET LALU MASUKKAN NILAI (StudentID, StudentName, Marks) NILAI (SOURCE.StudentID, SOURCE.StudentName, SOURCE.Marks) KETIKA TIDAK SESUAI DENGAN SUMBER LALU HAPUS

Keluaran

Identitas Siswa Nama siswa Tanda
satuAku benci87
2Manasa92
4Anay74

PILIH

Itu Pernyataan SELECT digunakan untuk memilih data dari database, tabel atau tampilan. Data yang dikembalikan disimpan dalam tabel hasil, yang disebut hasil-set .

Sintaksis

SELECT Column1, Column2, ... ColumN FROM TableName - (*) digunakan untuk memilih semua dari tabel SELECT * FROM table_name - Untuk memilih jumlah record yang akan dikembalikan gunakan: SELECT TOP 3 * FROM TableName

Contoh

- Untuk memilih beberapa kolom SELECT StudentID, StudentName FROM StudentsInfo - (*) digunakan untuk memilih semua dari tabel SELECT * FROM StudentsInfo - Untuk memilih jumlah record yang akan dikembalikan gunakan: SELECT TOP 3 * FROM StudentsInfo

Kami juga dapat menggunakan kata kunci berikut dengan pernyataan SELECT:

BERBEDA

Kata kunci DISTINCT digunakan dengan pernyataan SELECT untuk mengembalikan hanya nilai yang berbeda.

Sintaksis

PILIH DISTINCT Kolom1, Kolom2, ... KolomN DARI NamaTabel

Contoh

PILIH BEDAKAN Nomor Telepon DARI Informasi Siswa

DIPESAN OLEH

Pernyataan ini digunakan untuk mengurutkan hasil yang diperlukan baik dalam urutan naik atau turun. Secara default, hasil disimpan dalam urutan menaik. Namun, jika Anda ingin mendapatkan hasil dalam urutan menurun, Anda harus menggunakan DESC kata kunci.

cara menginstal php di windows

Sintaksis

PILIH Column1, Column2, ... ColumnN FROM TableName ORDER BY Column1, Column2, ... ASC | DESC

Contoh

- Pilih semua siswa dari tabel 'StudentsInfo' yang diurutkan berdasarkan ParentName: SELECT * FROM StudentsInfo ORDER BY ParentName - Pilih semua siswa dari tabel 'StudentsInfo' yang diurutkan berdasarkan ParentName dalam urutan Descending: SELECT * FROM StudentsInfo ORDER BY DESC ParentName - Pilih semua siswa dari tabel 'StudentsInfo' yang diurutkan berdasarkan ParentName dan StudentName: SELECT * FROM StudentsInfo ORDER BY ParentName, StudentName / * Pilih semua siswa dari tabel 'StudentsInfo' yang diurutkan berdasarkan ParentName dalam urutan menurun dan StudentName dalam urutan Ascending: * / SELECT * DARI StudentsInfo ORDER OLEH ParentName ASC, StudentName DESC

GRUP OLEH

Pernyataan ini digunakan dengan fungsi agregat untuk mengelompokkan hasil-set dengan satu atau lebih kolom.

Sintaksis

PILIH Column1, Column2, ..., ColumnN FROM TableName WHERE Kondisi GROUP BY ColumnName (s) ORDER BY ColumnName (s)

Contoh

- Untuk membuat daftar jumlah siswa dari masing-masing kota. PILIH JUMLAH (ID Pelajar), Kota DARI KELOMPOK Info Pelajar MENURUT Kota

SET PENGELOMPOKAN

GROUPING SETS diperkenalkan di SQL Server 2008, digunakan untuk menghasilkan kumpulan hasil yang dapat dihasilkan oleh a UNI SEMUA dari beberapa klausa GROUP BY sederhana.

Sintaksis

PILIH ColumnNames (s) FROM TableName GROUP BY GROUPING SETS (ColumnName (s))

Contoh

PILIH StudentID, StudentName, COUNT (City) dari StudentsInfo Group DENGAN MENGELOMPOKKAN SETS ((StudentID, StudentName, City), (StudentID), (StudentName), (City))

HAVING

Klausa ini digunakan dalam skenario di mana WHERE kata kunci tidak dapat digunakan.

Sintaksis

PILIH ColumnName (s) FROM TableName WHERE Kondisi GROUP BY ColumnName (s) HAVING Condition ORDER BY ColumnName (s)

Contoh

SELECT COUNT (StudentID), City FROM StudentsInfo GROUP BY City HAVING COUNT (StudentID)> 2 ORDER BY COUNT (StudentID) DESC

KE

Kata kunci INTO dapat digunakan dengan Pernyataan SELECT untuk menyalin data dari satu tabel ke tabel lainnya. Nah, Anda dapat memahami tabel ini sebagai tabel sementara. Tabel sementara umumnya digunakan untuk melakukan manipulasi pada data yang ada di tabel, tanpa mengganggu tabel aslinya.

Sintaksis

PILIH * KE NewTable [IN ExternalDB] DARI Kondisi OldTable WHERE

Contoh

- Untuk membuat backup tabel 'StudentsInfo' SELECT * INTO StudentsBackup FROM StudentsInfo --Untuk memilih hanya beberapa kolom dari StudentsInfo PILIH StudentName, PhoneNumber INTO StudentsDetails FROM StudentsInfo SELECT * INTO PuneStudents FROM StudentsInfo WHERE City = 'Pune'

KUBUS

CUBE merupakan perpanjangan dari GROUP BY klausa . Ini memungkinkan Anda untuk menghasilkan sub-total untuk semua kombinasi dari kolom pengelompokan yang ditentukan dalam klausa GROUP BY.

Sintaksis

PILIH ColumnName (s) FROM TableName GROUP BY CUBE (ColumnName1, ColumnName2, ....., ColumnNameN)

Contoh

PILIH StudentID, COUNT (City) FROM StudentsInfo GROUP BY CUBE (StudentID) ORDER BY StudentID

ROLLUP

ROLLUP adalah perpanjangan dari klausa GROUP BY. Ini memungkinkan Anda untuk memasukkan baris ekstra yang mewakili subtotal. Ini disebut sebagai baris teragregasi super bersama dengan baris total keseluruhan.

Sintaksis

PILIH ColumnName (s) FROM TableName GROUP BY ROLLUP (ColumnName1, ColumnName2, ....., ColumnNameN)

Contoh

PILIH StudentID, COUNT (City) FROM StudentsInfo GROUP BY ROLLUP (StudentID)

MENGIMBANGI

Klausa OFFSET digunakan dengan SELECT dan ORDER BY pernyataan untuk mengambil berbagai record. Ini harus digunakan dengan klausa ORDER BY karena tidak dapat digunakan sendiri. Juga, rentang yang Anda sebutkan harus sama dengan atau lebih besar dari 0. Jika Anda menyebutkan nilai negatif, maka itu menunjukkan kesalahan.

Sintaksis

PILIH ColumnNames) FROM TableName WHERE Condition ORDER BY ColumnName (s) OFFSET RowsToSkip ROWS

Contoh

Pertimbangkan kolom baru Tanda dalam Informasi Mahasiswa meja.

PILIH StudentName, ParentName DARI StudentsInfo ORDER BERDASARKAN Marks OFFSET 1 ROWS

MENGAMBIL

Klausa FETCH digunakan untuk mengembalikan satu set sejumlah baris. Ini harus digunakan bersama dengan klausa OFFSET.

Sintaksis

SELECT ColumnNames) FROM TableName WHERE Condition ORDER BY ColumnName (s) OFFSET RowsToSkip FETCH NEXT NumberOfRows ROWS ONLY

Contoh

PILIH StudentName, ParentName DARI StudentsInfo ORDER BERDASARKAN Marks OFFSET 1 ROWS FETCH NEXT 1 ROWS SAJA

PUNCAK

Klausa TOP digunakan dengan pernyataan SELECT untuk menyebutkan jumlah record yang dikembalikan.

Sintaksis

PILIH TOP Number ColumnName (s) FROM TableName WHERE Condition

Contoh

PILIH TOP 3 * DARI StudentsInfo

POROS

PIVOT digunakan untuk memutar baris ke nilai kolom dan menjalankan agregasi bila diperlukan pada nilai kolom yang tersisa.

Sintaksis

PILIH Nama Kolom Tidak Berputar, [Nama Kolom Berputar Pertama] sebagai Nama Kolom, [Nama Kolom Berputar Kedua] sebagai Nama Kolom, [Nama Kolom Berputar Ketiga] sebagai Nama Kolom, ... [Nama Kolom Berputar Terakhir] sebagai Nama Kolom FROM (kueri SELECT yang menghasilkan data) AS [alias untuk kueri awal] PIVOT ([AggregationFunction] (ColumName) FOR [ColumnName dari kolom yang nilainya akan menjadi tajuk kolom] IN ([First Pivoted ColumnName], [Second Pivoted ColumnName], [Third Pivoted ColumnName] ... [last kolom berputar])) AS [alias untuk Tabel Pivot]

Contoh

Untuk mendapatkan contoh detailnya, Anda bisa merujuk ke artikel saya tentang SQL PIVOT dan UNPIVOT . Selanjutnya dalam Tutorial SQL Server ini, mari kita lihat operator berbeda yang didukung oleh Microsoft SQL Server.

Operator

Itu berbagai jenis operator yang didukung oleh SQL Server adalah sebagai berikut:

Mari kita bahas satu per satu.

Operator Aritmatika

Operator Berarti Sintaksis

+

Tambahan

ekspresi + ekspresi

-

Pengurangan

ekspresi - ekspresi

*

Perkalian

ekspresi * ekspresi

/

Divisi

ekspresi / ekspresi

%

Modulous

ekspresi% ekspresi

Operator Penugasan

Operator Berarti Sintaksis

=

Tetapkan nilai ke variabel

variabel = 'nilai'

Operator Bitwise

Operator Berarti Sintaksis

& (Bitwise AND)

Digunakan untuk melakukan operasi AND logika bitwise antara dua nilai integer.

ekspresi & ekspresi

& = (Bitwise AND Assignment)

Digunakan untuk melakukan operasi AND logika bitwise antara dua nilai integer. Ini juga menetapkan nilai ke keluaran operasi.

ekspresi & = ekspresi

| (Bitwise ATAU)

Digunakan untuk melakukan operasi OR logika bitwise antara dua nilai integer yang diterjemahkan ke ekspresi biner dalam pernyataan Transact-SQL.

ekspresi | ekspresi

| = (Bitwise OR Assignment)

Digunakan untuk melakukan operasi OR logika bitwise antara dua nilai integer yang diterjemahkan ke ekspresi biner dalam pernyataan Transact-SQL. Ini juga menetapkan nilai ke keluaran operasi.

ekspresi | = ekspresi

^ (Eksklusif Bitwise ATAU)

Digunakan untuk melakukan operasi OR eksklusif bitwise antara dua nilai integer.

ekspresi ^ ekspresi

^ = (Eksklusif Bitwise ATAU Tugas)

Digunakan untuk melakukan operasi OR eksklusif bitwise antara dua nilai integer. Ini juga menetapkan nilai ke keluaran operasi.

ekspresi ^ = ekspresi

~ (TIDAK Bitwise)

Digunakan untuk melakukan operasi NOT logis bitwise pada nilai integer.

~ ekspresi

Operator Perbandingan

Operator Berarti Sintaksis

=

Sama dengan

ekspresi = ekspresi

>

Lebih besar dari

ekspresi> ekspresi

<

Kurang dari

ekspresi

> =

Lebih dari atau sama dengan

ekspresi> = ekspresi

<=

Kurang dari atau sama dengan

ekspresi<= expression

Tidak sebanding dengan

ekspresi ekspresi

! =

Tidak sebanding dengan

ekspresi! = ekspresi

!<

Tidak kurang dari

ekspresi!

!>

Tidak lebih dari

ekspresi!> ekspresi

Operator Senyawa

Operator Berarti Sintaksis

+ =

Digunakan untuk menambahkan nilai ke nilai asli dan menyetel nilai asli ke hasil.

ekspresi + = ekspresi

- =

Digunakan untuk mengurangi nilai dari nilai asli dan mengatur nilai asli ke hasil.

ekspresi - = ekspresi

* =

Digunakan untuk mengalikan nilai ke nilai asli dan menyetel nilai asli ke hasil.

ekspresi * = ekspresi

/ =

Digunakan untuk membagi nilai dari nilai asli dan mengatur nilai asli menjadi hasil.

ekspresi / = ekspresi

% =

Digunakan untuk membagi nilai dari nilai asli dan mengatur nilai asli menjadi hasil.

ekspresi% = ekspresi

& =

Digunakan untuk melakukan operasi DAN bitwise dan menyetel nilai asli ke hasil.

ekspresi & = ekspresi

^ =

Digunakan untuk melakukan operasi OR eksklusif bitwise dan menyetel nilai asli ke hasil.

ekspresi ^ = ekspresi

| =

Digunakan untuk melakukan operasi OR bitwise dan menyetel nilai asli ke hasil.

ekspresi | = ekspresi

Operator Logis

Operator Berarti Sintaksis

SEMUA

Mengembalikan TRUE jika semua kumpulan perbandingan BENAR.

scalar_expression! = ALL (subquery)

DAN

Mengembalikan TRUE jika kedua ekspresi BENAR.

boolean_expression AND boolean_expression

APA SAJA

Menampilkan TRUE jika salah satu dari kumpulan perbandingan adalah BENAR.

scalar_expression! = {ANY} (subkueri)

ANTARA

Mengembalikan TRUE jika operan berada dalam jangkauan.

sampleexpression [BUKAN] ANTARA ekspresi awal DAN ekspresi akhir

ADA

Menampilkan TRUE jika subkueri berisi baris apa pun.

EXISTS (sub query)

DI

Mengembalikan TRUE jika operan sama dengan salah satu daftar ekspresi.

test_expression [NOT] IN (subkueri | ekspresi [,… n])

SUKA

Mengembalikan TRUE jika operan cocok dengan pola.

match_expression [BUKAN] pola SUKA [ESCAPE escape_character]

TIDAK

Membalik nilai operator boolean apa pun.

[BUKAN] ekspresi_boolean

ATAU

Mengembalikan TRUE jika salah satu dari ekspresi boolean TRUE.

boolean_expression OR boolean_expression

BEBERAPA

Mengembalikan TRUE jika beberapa kumpulan perbandingan BENAR.

scalar_expression<= { SOME} ( subquery )

Operator Resolusi Lingkup

Operator Berarti Contoh

::

Menyediakan akses ke anggota statis dari tipe data gabungan. Tipe data gabungan adalah tipe data yang berisi beberapa metode dan tipe data sederhana. Tipe data gabungan Ini termasuk tipe CLR bawaan dan Tipe Buatan Pengguna (UDT) SQLCLR kustom.

MENYATAKAN @hid hierarchyid SELECT @hid = hierarchyid :: GetRoot () PRINT @ hid.ToString ()

Atur Operator

Terutama ada tiga operasi set:PERSATUAN,MEMOTONG,MINUS. Anda dapat merujuk ke gambar di bawah ini untuk memahami operasi yang ditetapkan dalam SQL. Lihat gambar di bawah ini:

Operator Berarti Sintaksis

PERSATUAN

Operator UNION digunakan untuk menggabungkan kumpulan hasil dari dua atau lebih pernyataan SELECT.

PILIH ColumnName (s) FROM Table1
PERSATUAN
PILIH ColumnName (s) FROM Table2

MEMOTONG

Klausa INTERSECT digunakan untuk menggabungkan duaPILIHpernyataan dan mengembalikan perpotongan dari kumpulan data kedua pernyataan SELECT.

PILIH Kolom1, Kolom2….
DARI TableName
DI MANA Kondisi
MEMOTONG
PILIH Kolom1, Kolom2….
DARI TableName
DI MANA Kondisi

KECUALI

Operator EXCEPT mengembalikan tupel yang dikembalikan oleh operasi SELECT pertama, dan tidak dikembalikan oleh operasi SELECT kedua.

PILIH ColumnName
DARI TableName
KECUALI
PILIH ColumnName
DARI TableName

Operator String

Operator Berarti Sintaks / Contoh

+ (Penggabungan String)

Menggabungkan dua atau lebih biner atau karakter string, kolom, atau kombinasi string dan nama kolom menjadi satu ekspresi

ekspresi + ekspresi

+ = (Penggabungan String)

Digunakan untuk menggabungkan dua string dan menyetel string tersebut ke hasil operasi.

ekspresi + = ekspresi

% (Karakter Wildcard untuk dicocokkan)

Digunakan untuk mencocokkan string apa pun yang terdiri dari nol atau lebih karakter.

Contoh: 'sample%'

[] (Karakter Pengganti untuk dicocokkan)

Digunakan untuk mencocokkan satu karakter dalam rentang atau set tertentu yang ditentukan di antara tanda kurung [].

Contoh: m [n-z]% ’

[^] (Karakter Wildcard untuk dicocokkan)

Digunakan untuk mencocokkan satu karakter yang tidak berada dalam rentang atau set yang ditentukan di antara tanda kurung siku.

Contoh: ‘Al [^ a]%’

_ (Karakter Wildcard untuk dicocokkan)

Digunakan untuk mencocokkan satu karakter dalam operasi perbandingan string

test_expression [NOT] IN (subkueri | ekspresi [,… n])

Agregat Fungsi

Berbeda fungsi agregat yang didukung oleh SQL Server adalah sebagai berikut:

Fungsi Deskripsi Sintaksis Contoh

JUMLAH()

Digunakan untuk mengembalikan jumlah sekelompok nilai.

PILIH SUM (ColumnName) DARI TableName

PILIH SUM (Marks) DARI StudentsInfo

MENGHITUNG()

Mengembalikan jumlah baris baik berdasarkan kondisi, atau tanpa kondisi.

PILIH JUMLAH (ColumnName) DARI TableName WHERE Kondisi

PILIH JUMLAH (StudentID) DARI StudentsInfo

AVG ()

Digunakan untuk menghitung nilai rata-rata kolom numerik.

PILIH AVG (ColumnName) DARI TableName

PILIH AVG (Tanda) DARI StudentsInfo

MIN ()

Fungsi ini mengembalikan nilai minimum kolom.

PILIH MIN (ColumnName) DARI TableName

PILIH MIN (Marks) FROM StudentsInfo

MAX ()

Mengembalikan nilai maksimum kolom.

PILIH MAX (ColumnName) DARI TableName

PILIH MAX (Tanda) DARI StudentsInfo

PERTAMA()

Digunakan untuk mengembalikan nilai pertama kolom.

PILIH PERTAMA (ColumnName) DARI TableName

PILIH PERTAMA (Marks) DARI StudentsInfo

TERAKHIR()

Fungsi ini mengembalikan nilai terakhir kolom.

PILIH TERAKHIR (ColumnName) DARI TableName

PILIH TERAKHIR (Tanda) DARI StudentsInfo

Fungsi Buatan Pengguna

Microsoft SQL Server memungkinkan pengguna untuk membuat fungsi yang ditentukan pengguna yang merupakan rutinitas. Rutinitas ini menerima parameter, dapat melakukan tindakan sederhana hingga kompleks, dan mengembalikan hasil tindakan tertentu itu sebagai nilai. Di sini, nilai yang dikembalikan bisa berupa nilai skalar tunggal atau kumpulan hasil lengkap.

Anda dapat menggunakan fungsi yang ditentukan pengguna untuk:

  • Izinkan pemrograman modular
  • Kurangi lalu lintas jaringan
  • Izinkan eksekusi kueri lebih cepat

Selain itu, ada berbagai jenis fungsi yang ditentukan pengguna yang dapat Anda buat. Mereka:

  • Fungsi Skalar: Biasanyamengembalikan nilai data tunggal dari tipe yang ditentukan dalam klausa RETURNS.
  • Fungsi Nilai Tabel: Biasanyakembali amejatipe data.
  • Fungsi Sistem: Berbagai fungsi sistem disediakan oleh SQL Server untuk melakukan operasi yang berbeda.

Nah, selain dari fungsi yang ditentukan pengguna, ada banyak fungsi bawaan di SQL Server yang dapat digunakan untuk melakukan berbagai tugas. Melanjutkan artikel tentang tutorial SQL Server ini, mari kita sekarang memahami apa itu kueri bersarang.

Kueri Bertingkat

Kueri bertingkat adalah kueri yang memiliki kueri luar dan subkueri dalam. Jadi, pada dasarnya, subkueri adalah kueri yang bertumpuk di dalam kueri lain seperti SELECT, INSERT, UPDATE atau DELETE. Lihat gambar di bawah ini:

Selanjutnya dalam tutorial SQL Server ini, mari kita pahami berbagai jenis gabungan dalam SQL.

Bergabung

digunakan untuk menggabungkan tupel dari dua atau lebih tabel, berdasarkan kolom terkait antar tabel. Ada empat jenis gabungan:

  • GABUNG DALAM: Mengembalikan rekaman yang memiliki nilai yang cocok di kedua tabel.
  • KIRI GABUNG: Mengembalikan rekaman dari tabel kiri, dan juga rekaman yang memenuhi kondisi dari tabel kanan.
  • GABUNG KANAN: Mengembalikan rekaman dari tabel kanan, dan juga rekaman yang memenuhi kondisi dari tabel kiri.
  • BERGABUNG LENGKAP: Mengembalikan rekaman yang memiliki kecocokan di tabel kiri atau kanan.

Pertimbangkan tabel berikut bersama dengan tabel StudentsInfo, untuk memahami sintaks gabungan.

SubjectID Identitas Siswa SubjectName
1010Matematika
2sebelasFisika
312Kimia

GABUNG DALAM

Sintaksis

PILIH ColumnName (s) DARI Tabel1 INNER JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Contoh

PILIH Subjects.SubjectID, StudentsInfo.StudentName FROM Subjects INNER JOIN StudentsInfo ON Subjects.StudentID = StudentsInfo.StudentID

KIRI BERGABUNG

Sintaksis

PILIH ColumnName (s) DARI Tabel1 LEFT JOIN Table2 ON Table1.ColumnName = Tabel2.ColumnName

Contoh

SELECT StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo LEFT GABUNG Subjects ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

GABUNG KANAN

Sintaksis

PILIH ColumnName (s) DARI Tabel1 KANAN GABUNG Tabel2 PADA Tabel1.ColumnName = Tabel2.ColumnName

Contoh

PILIH StudentsInfo.StudentName, Subjects.SubjectID DARI StudentsInfo KANAN GABUNG Subjects ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

BERGABUNG LENGKAP

Sintaksis

PILIH ColumnName (s) DARI Tabel1 FULL OUTER JOIN Table2 ON Table1.ColumnName = Table2.ColumnName

Contoh

SELECT StudentsInfo.StudentName, Subjects.SubjectID FROM StudentsInfo FULL OUTER GABUNG Subjects ON StudentsInfo.SubjectID = Subjects.SubjectID ORDER BY StudentsInfo.StudentName

Selanjutnya, dalam artikel tutorial SQL Server ini, mari kita pahami berbagai jenis loop yang didukung oleh SQL Server.

Loop

Perintah control-of-flow yang berbeda adalah sebagai berikut:

Mari kita bahas satu per satu.

MULAI .. AKHIR

Kata kunci ini digunakan untuk menyertakan serangkaian pernyataan SQL. Kemudian, grup pernyataan SQL ini dapat dijalankan.

Sintaksis

BEGIN StatementBlock END

ISTIRAHAT

Pernyataan ini digunakan untuk keluar dari loop WHILE saat ini. Dalam kasus ini, loop WHILE saat ini bersarang di dalam loop lain, maka pernyataan BREAK hanya keluar dari loop saat ini dan kontrol diteruskan ke pernyataan berikutnya dalam loop saat ini. Pernyataan BREAK umumnya digunakan di dalam pernyataan IF.

Sintaksis

ISTIRAHAT

TERUS

Pernyataan CONTINUE digunakan untuk memulai ulang pengulangan WHILE. Jadi, pernyataan apa pun setelah kata kunci LANJUTKAN akan diabaikan.

Sintaksis

TERUS

Di sini, Label adalah titik setelah pemrosesan dimulai jika GOTO ditargetkan ke label tersebut.

PERGI KE

Digunakan untuk mengubah aliran eksekusi ke label. Pernyataan yang ditulis setelah kata kunci GOTO dilewati dan pemrosesan dilanjutkan di label.

Sintaksis

Tentukan Label: Label: Alter Eksekusi: Label GOTO

Di sini, Label adalah titik setelah pemrosesan dimulai jika GOTO ditargetkan ke label tersebut.

JIKA..ELSE

Seperti bahasa pemrograman lainnya, pernyataan If-else di SQL Server menguji kondisi dan jika kondisinya salah maka pernyataan 'else' dijalankan.

Sintaksis

JIKA BooleanExpression StatementBlock [ELSE StatementBlock]

KEMBALI

Digunakan untuk keluar tanpa syarat dari kueri atau prosedur. Jadi, pernyataan yang ditulis setelah klausa RETURN tidak dieksekusi.

Sintaksis

KEMBALI [IntegerExpression]

Di sini, nilai integer dikembalikan.

TUNGGU

Alur kontrol WAITFOR digunakan untuk memblokir pelaksanaan prosedur yang tersimpan, transaksi atau batch sampai pernyataan tertentu diubah, mengembalikan setidaknya satu baris atau selang waktu atau waktu tertentu berlalu.

Sintaksis

WAITFOR (GetConversionGroupStatement)] [, TIMEOUT batas waktu]

dimana,

  • MENUNDA - Jangka waktu yang harus dilalui
  • TimeToPass - Pjangka waktu menunggu
  • WAKTU - Ituwaktu ketika prosedur tersimpan, transaksi atau batch berjalan.
  • TimeToExecute - Ituwaktu saat pernyataan WAITFOR selesai.
  • RecieveStatement - UNTUKpernyataan RECEIVE yang valid.
  • GetConversionGroupStatement - UNTUKpernyataan GET CONVERSATION GROUP yang valid.
  • TIMEOUT batas waktu - Menentukan periode waktu, dalam milidetik, untuk menunggu pesan sampai di antrian.

SEMENTARA

Loop ini digunakan untuk menetapkan kondisi untuk eksekusi berulang dari pernyataan SQL tertentu atau blok pernyataan SQL. Pernyataan dijalankan selama kondisi yang disebutkan oleh pengguna adalah BENAR. Segera setelah kondisi gagal, loop berhenti dijalankan.

Sintaksis

WHILE BooleanExpression StatementBlock

Sekarang, setelah kalian mengetahui perintah DML, mari kita lanjutkan ke bagian selanjutnyadalam artikel ini di Tutorial SQL yaitu perintah DCL.

Perintah Bahasa Kontrol Data (DCL)

Bagian tutorial SQL Server ini akan memberi Anda gambaran tentang perintah yang digunakan untuk menegakkan keamanan database di beberapa lingkungan database pengguna. Perintahnya adalah sebagai berikut:

HIBAH

Perintah GRANT digunakan untuk memberikan akses atau hak istimewa pada database dan objeknya kepada pengguna.

Sintaksis

BERIKAN PrivilegeName PADA ObjectName KE RoleName [DENGAN GRANT OPTION]

dimana,

  • PrivilegeName - Apakah privilege / hak / akses diberikan kepada pengguna.
  • ObjectName - Nama objek database seperti TABLE / VIEW / STORED PROC.
  • Nama pengguna - Nama pengguna yang diberi akses / hak / hak istimewa.
  • PUBLIK - Untuk memberikan hak akses kepada semua pengguna.
  • Nama peran - Nama sekumpulan hak istimewa yang dikelompokkan bersama.
  • DENGAN PILIHAN GRANT - Untuk memberikan akses kepada pengguna untuk memberikan hak kepada pengguna lain.

Contoh

- Untuk memberikan izin SELECT ke tabel StudentsInfo ke pengguna1 GRANT SELECT ON StudentsInfo TO pengguna1

MENCABUT

Perintah REVOKE digunakan untuk menarik hak akses pengguna yang diberikan dengan menggunakan perintah GRANT.

Sintaksis

BATALKAN PrivilegeName PADA ObjectName DARI PUBLIK

Contoh

- Untuk mencabut izin yang diberikan dari pengguna1 REVOKE SELECT ON StudentsInfo TO pengguna1

Selanjutnya dalam tutorial SQL Server ini, mari kita pahami cara membuat dan menggunakan Prosedur Tersimpan.

Prosedur Tersimpan

Prosedur Tersimpan adalah unit yang dapat digunakan kembali yang merangkum logika bisnis tertentu dari aplikasi. Jadi, ini adalah sekelompok pernyataan dan logika SQL, dikompilasi dan disimpan bersama untuk melakukan tugas tertentu.

Sintaksis

BUAT [ATAU GANTI] PROSEDUR procedure_name [(parameter_name [IN | OUT | IN OUT] type [])] IS BEGIN [declaration_section] executable_section // Pernyataan SQL yang digunakan dalam prosedur tersimpan END GO

Contoh

--Buat prosedur yang akan mengembalikan nama siswa ketika StudentId diberikan sebagai parameter input ke prosedur yang disimpan Buat PROCEDURE GetStudentName (@StudentId INT, --Input parameter, @StudName VARCHAR (50) OUT --Parameter keluaran, AS BEGIN SELECT @StudName = StudentName FROM StudentsInfo WHERE StudentID = @ StudentId END

Langkah-langkah untuk mengeksekusi:

      • Nyatakanlah sebagai nasehat (50)
      • EXEC GetStudentName 01, keluaran @StudName
      • PILIH @StudName

Prosedur di atas mengembalikan nama siswa tertentu,tentang pemberian id siswa itu sebagai masukan. Selanjutnya dalam tutorial SQL Server ini, mari kita memahami perintah bahasa kontrol transaksi.

Perintah Bahasa Kontrol Transaksi (TCL)

Bagian dari tutorial SQL Server ini akan memberi Anda wawasan tentang perintah yang digunakan untuk mengelola transaksi di database.Perintahnya adalah sebagai berikut:

MELAKUKAN

Perintah COMMIT digunakan untuk menyimpan transaksi ke dalam database.

Sintaksis

MELAKUKAN

ROLLBACK

Perintah ROLLBACK digunakan untuk memulihkan database ke status komitmen terakhir.

Sintaksis

ROLLBACK

CATATAN: Saat Anda menggunakan ROLLBACK dengan SAVEPOINT, Anda dapat langsung beralih ke savepoint dalam transaksi yang sedang berlangsung. Sintaks: ROLLBACK TO SavepointName

SAVEPOINT

Perintah SAVEPOINT digunakan untuk menyimpan transaksi sementara. Jadi jika Anda ingin melakukan rollback ke titik mana pun, Anda dapat menyimpan titik itu sebagai 'SAVEPOINT'.

Sintaksis

SAVEPOINT SAVEPOINTNAME

Pertimbangkan tabel di bawah ini untuk memahami cara kerja transaksi dalam database.

Identitas Siswa Nama siswa
satuRohit
2Suhana
3Ashish
4Prerna

Sekarang, gunakan yang di bawah ini untuk memahami transaksi dalam database.

INSERT INTO StudentTable VALUES (5, 'Avinash') COMMIT UPDATE StudentTable SET name = 'Akash' WHERE id = '5' SAVEPOINT S1 INSERT INTO StudentTable VALUES (6, 'Sanjana') SAVEPOINT S2 INSERT INTO StudentTable VALUES (7, 'Sanjay ') SAVEPOINT S3 INSERT INTO StudentTable VALUES (8,' Veena ') SAVEPOINT S4 SELECT * FROM StudentTable

Selanjutnya di artikel tutorial SQL Server ini, mari kita memahami cara menangani pengecualian di Transact-SQL.

Penanganan Pengecualian

Ada dua jenis pengecualian, yaitu pengecualian yang ditentukan sistem dan pengecualian yang ditentukan pengguna. Seperti namanya, penanganan pengecualian adalah proses di mana pengguna dapat menangani pengecualian yang dihasilkan. Untuk menangani pengecualian, Anda harus memahami pernyataan aliran kontrol berikut:

MELEMPARKAN

Klausa ini digunakan untuk memunculkan eksepsi dan mentransfer eksekusi ke blok CATCH dari konstruksi TRY… CATCH.

Sintaksis

THROW [ErrorNumber, @localvariable, State] []

dimana,

  • ErrorNumber - UNTUKkonstanta atau variabel yang mewakili pengecualian.
  • Pesan - UNTUKvariabel atau string yang mendeskripsikan pengecualian.
  • Negara -Konstanta atau variabel antara 0 dan 255 yang menunjukkan status yang akan dikaitkan dengan pesan.
THROW 51000, 'Record tidak ada.', 1

COBA TANGKAP

Digunakan untuk mengimplementasikan penanganan pengecualian di Transact-SQL. Sekelompok pernyataan dapat dimasukkan dalam blok TRY. Jika terjadi kesalahan di blok TRY, kontrol dilewatkan ke grup pernyataan lain yang disertakan dalam blok CATCH.

Sintaksis

MULAI COBA PernyataanBlock AKHIR COBALAH MULAI TANGKAP [StatementBlock] AKHIRI PENANGKAPAN []
MULAI COBA PILIH * DARI Informasi Siswa AKHIR COBA MULAI CATCH SELECT ERROR_NUMBER () AS ErNum, ERROR_MESSAGE () AS ErMsg END CATCH

DI engan ini, kita sampai pada akhir artikel ini tentang Tutorial SQL Server. Saya harap Anda menikmati membaca artikel ini tentang Tutorial SQL Server Untuk Pemula.saya Jika Anda ingin mendapatkan pelatihan terstruktur tentang MySQL, lihat yang dilengkapi dengan pelatihan langsung yang dipimpin instruktur dan pengalaman proyek kehidupan nyata. Pelatihan ini akan membantu Anda memahami MySQL secara mendalam dan membantu Anda menguasai subjek. Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar ' Tutorial SQL Server 'Dan saya akan menghubungi Anda kembali.