Mysql menyisipkan prosedur tersimpan massal

Dalam tutorial SQL Server ini, kita akan mempelajari cara membuat prosedur tersimpan di SQL Server untuk operasi penyisipan dan pembaruan. Selain itu, kami juga akan membahas serangkaian topik berikut dalam tutorial ini

  • Prosedur tersimpan untuk menyisipkan dan memperbarui di SQL Server
  • Prosedur tersimpan di SQL Server untuk memasukkan data ke dalam tabel
  • Prosedur tersimpan di SQL Server untuk dimasukkan ke dalam tabel
  • Prosedur tersimpan tanggal penyisipan SQL Server
  • Masukkan prosedur tersimpan di SQL Server dengan parameter
  • Masukkan prosedur tersimpan dalam contoh SQL Server
  • Prosedur tersimpan penyisipan massal SQL Server
  • Prosedur tersimpan SQL Server pilih insert
  • Prosedur tersimpan di SQL Server untuk menyisipkan pembaruan menghapus
  • Prosedur tersimpan tabel pembaruan SQL Server
  • Perbarui prosedur tersimpan dalam contoh SQL Server
  • Prosedur tersimpan untuk pembaruan massal di SQL Server

Daftar isi

Prosedur tersimpan untuk menyisipkan dan memperbarui di SQL Server

Pada bagian ini, kita akan mempelajari cara membuat stored procedure di SQL Server untuk operasi insert dan update sekaligus

Prosedur tersimpan di SQL Server adalah kumpulan kueri SQL yang dapat Anda gunakan berulang kali. Anda dapat membuat kumpulan kueri SQL Anda sendiri dan kemudian menyimpannya sebagai prosedur. Anda dapat menjalankan prosedur tersimpan itu hanya dengan memanggilnya dengan satu baris kode

Untuk memahami topik ini dengan lebih baik, kami akan mengilustrasikan sebuah contoh. Dalam contoh, kami akan membuat prosedur tersimpan yang akan menyisipkan atau memperbarui catatan berdasarkan keberadaannya

Pertama, kami akan membuat tabel sampel di SQL Server dan memasukkan beberapa catatan di dalamnya. Inilah kueri untuk tugas ini

USE [sqlserverguides]
GO

CREATE TABLE Customertbl [
	cust_id INT IDENTITY [1,1] NOT NULL,
	first_name VARCHAR[50],
	last_name VARCHAR[50],
	email VARCHAR[50],
	city VARCHAR[50],
	country VARCHAR[50]
];
INSERT INTO CustomerTbl [first_name, last_name, email, city, country] VALUES ['Harold', 'Seggie', 'hseggie0@techcrunch.com', 'Toronto', 'Canada'];
INSERT INTO CustomerTbl [first_name, last_name, email, city, country] VALUES ['Kial', 'Seeds', 'kseeds1@mlb.com', 'Auckland', 'New Zealand'];
INSERT INTO CustomerTbl [first_name, last_name, email, city, country] VALUES ['Rebekkah', 'Lambal', 'rlambal2@webnode.com', 'New York', 'United States'];
INSERT INTO CustomerTbl [first_name, last_name, email, city, country] VALUES ['Risa', 'Fayer', 'rfayer3@so-net.ne.jp', 'Montreal', 'Canada'];
INSERT INTO CustomerTbl [first_name, last_name, email, city, country] VALUES ['Kippy', 'Bawden', 'kbawden4@nyu.edu', 'Chicago', 'United States'];

Pada contoh di atas, kita telah membuat tabel dengan nama Customertbl. Selain itu, er juga memasukkan 5 record ke dalam tabel. Dan jika kita query tabel, kita akan mendapatkan hasil sebagai berikut

Tabel pelanggantbl

Selanjutnya, kita harus membuat prosedur tersimpan di SQL Server yang akan melakukan operasi berikut

  • Pertama, ia akan memeriksa keberadaan record di Customertbl
  • Sekarang, jika catatan sudah ada, itu akan menggunakan nilai input untuk memperbarui catatan itu
  • Namun, jika record tidak ada maka akan menggunakan nilai input untuk menyisipkan record tersebut
USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_

Dalam prosedur di atas, kami membuat prosedur tersimpan yang menerima 5 parameter input. Dan pertama, kami memeriksa keberadaan catatan menggunakan parameter email. Selain itu, berdasarkan keberadaannya, kami menjalankan pernyataan pembaruan atau penyisipan

Selanjutnya, prosedur akan mengembalikan pernyataan cetak berdasarkan tindakan yang dilakukan oleh prosedur tersimpan

Eksekusi prosedur tersimpan

Mari coba jalankan prosedur di atas dengan memberikan alamat email yang ada dan memperbarui bidang negara. Dan juga coba jalankan prosedur dengan memberikan record baru

USE [sqlserverguides]
GO

EXEC usp_InsertUpdateData 'Kippy', 'Bawden', 'kbawden4@nyu.edu', 'Toronto', 'Canada'

EXEC usp_InsertUpdateData 'Sherie', 'Lumbers', 'slumbers1@harvard.edu', 'Chicago', 'United States'

Dalam contoh di atas, pertama, kami menjalankan prosedur dengan memberikan email yang ada dan mengubah bidang kota dan negara

Setelah ini, kami menjalankan prosedur dengan memberikan nilai baru. Pada akhirnya, kita akan mendapatkan output berikut

Prosedur tersimpan untuk menyisipkan dan memperbarui di SQL Server

Juga, periksa. Operator dan contoh logika SQL Server

Prosedur tersimpan tanggal penyisipan SQL Server

Pada bagian ini, kita akan membahas cara membuat stored procedure di SQL Server untuk menyisipkan nilai tanggal dalam sebuah tabel. Dan untuk tugas ini, pertama kita akan membuat tabel sederhana di database

USE [sqlserverguides]
GO

CREATE TABLE Ordertbl [
	order_id INT IDENTITY [1,1] NOT NULL,
	product_name VARCHAR[50],
	order_date DATE
];

Dalam kueri di atas, kami telah membuat tabel baru di database sqlserverguides. Dan nama tabel ini adalah Ordertbl dan menampung 3 kolom order_id, proceduect_name, dan order_date

Selanjutnya, kita akan membuat stored procedure di SQL Server untuk memasukkan record baru ke dalam tabel ini termasuk nilai tanggal

CREATE PROCEDURE usp_InsertOrderData
[
    @Product VARCHAR[50]
]
AS
BEGIN
    DECLARE @OrderDate DATE
    SET @OrderDate = GETDATE[] 
    INSERT INTO [Ordertbl] VALUES [@Product, @OrderDate]
    SELECT * FROM [Ordertbl]
END
_
  • Dalam kueri di atas, kami telah membuat prosedur tersimpan usp_InsertOrderData. Sekarang, prosedur ini menerima nama produk sebagai parameter masukan
  • Dan di badan prosedur, pertama, kami mendeklarasikan variabel tanggal pesanan. Dan kemudian, gunakan fungsi GETDATE untuk menetapkan nilai tanggal saat ini ke variabel OrderDate
  • Setelah ini, kami menggunakan pernyataan INSERT untuk memasukkan nama produk dan nilai tanggal pesanan dalam tabel. Yang terakhir, kami juga menggunakan pernyataan SELECT untuk mengambil catatan tabel

Sekarang, mari gunakan prosedur ini untuk membuat beberapa entri di Ordertbl

USE [sqlserverguides]
GO

EXEC usp_InsertOrderData 'American Cheese'

Dalam kueri di atas, kami menjalankan prosedur tersimpan dan kami juga memberikan nama produk sebagai Keju Amerika. Inilah hasil akhirnya

Prosedur tersimpan tanggal penyisipan SQL Server

Membaca. Prosedur tersimpan SQL Server jika ada perbarui sisipkan yang lain

Prosedur tersimpan penyisipan massal SQL Server

Sisipan massal di SQL Server adalah teknik untuk memindahkan data dalam jumlah besar dari sumber ke tujuan baru. Selain itu, ada berbagai cara untuk menyisipkan data secara massal dari file CSV ke dalam database SQL Server

Oleh karena itu, kita dapat menggunakan SQL Server Import and Export Wizard, utilitas BCP, atau pernyataan BULK INSERT. Jadi, dalam tutorial ini, kami memahami cara membuat prosedur tersimpan di SQL Server untuk operasi penyisipan massal

Mari kita pahami implementasi ini menggunakan contoh di SQL Server. Dan untuk ini, kita akan menggunakan tabel Customertbl dari bagian pertama. Selain itu, kami akan memasukkan data berikut dari CSV ke dalam tabel secara massal

Data pelanggan. berkas CSV

Selanjutnya, kita akan membuat prosedur tersimpan di SQL Server yang akan memasukkan data secara massal dari Data_Pelanggan. csv ke dalam Customertbl. Selain itu, Anda juga dapat mengunduh file CSV dari tautan unduhan berikut

Unduh Data_Pelanggan. csv

Skrip SQL untuk membuat stored procedure adalah sebagai berikut

USE [sqlserverguides]
GO

CREATE PROC usp_bulkInsertCustomers
AS
BEGIN
  BULK INSERT dbo.Customertbl
  FROM 'C:\Users\Shivam\Downloads\Customer_Data.csv'
  WITH [FORMAT = 'CSV'
        , FIELDTERMINATOR = ','
        , ROWTERMINATOR = '0x0a'];
END
_

Dalam kueri di atas, kami membuat prosedur tersimpan sederhana yang menggunakan pernyataan BULK INSERT untuk memasukkan data dari CSV yang diberikan ke Customertbl

USE [sqlserverguides]
GO

EXEC usp_bulkInsertCustomers

SELECT * FROM Customertbl

Sekarang, ketika kita menjalankan prosedur di atas dan menanyakan tabel, kita akan mendapatkan hasil sebagai berikut

Prosedur tersimpan penyisipan massal SQL Server

Juga, periksa. Sisipan massal SQL Server dari file CSV

Prosedur tersimpan SQL Server pilih insert

Pada bagian ini, kita akan membahas cara membuat stored procedure di SQL Server yang menggunakan pernyataan INSERT INTO SELECT. Pernyataan INSERT INTO SELECT memungkinkan memasukkan data ke dalam tabel 1 dari tabel 2 dalam database SQL Server

Sekarang, kita telah membahas topik ini secara rinci dalam tutorial berikut tentang SQL Server.

Masukkan prosedur tersimpan di SQL Server dengan parameter

Seperti yang kita ketahui, stored procedure di SQL Server adalah kumpulan kueri yang digunakan untuk mencapai beberapa tujuan. Selain itu, ini adalah kode SQL yang disiapkan yang dikompilasi dan disimpan dalam database dan dapat digunakan kembali berkali-kali.  

Sekarang, prosedur tersimpan di SQL Server menerima dua jenis parameter. Yang pertama adalah parameter input dan yang kedua adalah parameter output. Untuk detail selengkapnya, lihat parameter prosedur tersimpan SQL Server

Sekarang, untuk memasukkan beberapa data ke dalam tabel, kita harus menggunakan parameter input dalam prosedur tersimpan SQL Server. Tujuan utama menggunakan parameter masukan adalah untuk meneruskan beberapa nilai dari pengguna ke dalam prosedur. Selanjutnya, nilai tersebut akan digunakan dalam prosedur untuk dimasukkan ke dalam tabel yang ditentukan

Masukkan prosedur tersimpan dalam contoh SQL Server

Untuk pemahaman yang lebih baik, mari kita bahas contoh di SQL Server. Sekali lagi untuk ini, kami akan menggunakan Customertbl

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertCustData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	    PRINT 'New Customer Data Inserted'
END
_

Dalam prosedur di atas, kami membuat prosedur tersimpan yang menerima 5 parameter input. Selanjutnya, dalam prosedur, kami menggunakan pernyataan INSERT INTO TABLE untuk memasukkan nilai parameter di Customertbl

Selain itu, ketika kami berhasil menjalankan prosedur tersimpan dengan parameter input, prosedur tersimpan akan mengembalikan pesan cetak

USE [sqlserverguides]
GO

EXEC usp_InsertCustData 'Sherie', 'Lumbers', 'slumbers1@harvard.edu', 
                        'Chicago', 'United States'
_

Berikut adalah pesan sukses untuk kueri di atas

Masukkan prosedur tersimpan dalam contoh SQL Server

Selain itu, kami juga dapat mengonfirmasi penyisipan yang berhasil dengan menanyakan Customertbl

Masukkan prosedur tersimpan di SQL Server dengan parameter

Membaca. Cara menguji prosedur tersimpan di SQL Server

Prosedur tersimpan tabel pembaruan SQL Server

Pada bagian ini, kita akan membahas cara membuat prosedur tersimpan di SQL Server untuk memperbarui data tabel

Sekali lagi, untuk membuat prosedur tersimpan seperti itu di SQL Server, kami akan menggunakan parameter input dari prosedur tersimpan. Parameter input dari prosedur tersimpan akan digunakan untuk meneruskan nilai yang diperbarui ke prosedur. Dan prosedur tersimpan akan menggunakan pernyataan UPDATE untuk memperbarui data

Perbarui prosedur tersimpan dalam contoh SQL Server

Untuk pemahaman yang lebih baik, mari kita bahas contoh terkait stored procedure ini. Dan kali ini kita akan membuat tabel baru dengan beberapa data

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_0

Dalam kueri di atas, kami membuat tabel Profil baru di database sqlserverguides. Selain itu, kami juga memasukkan 5 catatan di tabel Profil. Data dari tabel Profil ditunjukkan di bawah ini

Perbarui prosedur tersimpan dalam contoh SQL Server

Selanjutnya, mari buat stored procedure di SQL Server yang akan mengupdate nilai kolom is_active pada tabel Profile

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_1

Prosedur di atas akan mengambil user-id sebagai input dan kemudian memperbarui nilai is_active menjadi True untuk pengguna tersebut. Sekarang, mari jalankan prosedur dengan memberikan id pengguna

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_2

Sekarang mari kita kueri tabel Profil untuk memeriksa apakah data diperbarui atau tidak

Prosedur tersimpan tabel pembaruan SQL Server

Membaca. Ubah Prosedur Tersimpan di SQL Server

Prosedur tersimpan untuk pembaruan massal di SQL Server

Pada bagian ini, kita akan mempelajari cara membuat prosedur tersimpan di SQL Server untuk operasi pembaruan massal

Jadi, di SQL Server, kami memiliki pernyataan BULK INSERT yang digunakan untuk memasukkan data dari file yang berbeda seperti CSV, Excel ke dalam tabel. Namun, sayangnya, tidak ada pernyataan BULK UPDATE di SQL Server

Namun, di bagian ini, kami akan mengilustrasikan metode berbeda untuk melakukan operasi pembaruan massal menggunakan prosedur tersimpan. Dan untuk implementasi ini, kami akan melakukan langkah-langkah berikut

#1 Membuat tabel baru

Pertama, kita akan membuat tabel baru di SQL Server dan juga menyisipkan beberapa record di dalamnya. Inilah kueri untuk tugas ini

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_3

Dalam kueri di atas, kami membuat tabel Profil baru di database sqlserverguides. Selain itu, kami juga memasukkan 5 catatan di tabel Profil

#2 Membuat tipe tabel

Selanjutnya, kita akan membuat tipe tabel yang ditentukan pengguna di SQL Server. Sekarang, tipe tabel yang ditentukan pengguna adalah tipe data kustom di SQL Server yang menyimpan data dalam format tabel. Kami akan menggunakan tipe data ini untuk meneruskan data ke prosedur tersimpan

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_4

Dalam kueri di atas, kami membuat tabel khusus di database sqlserverguides. Selain itu, kolom jenis ini mirip dengan kolom tabel Profil

#3 Membuat prosedur tersimpan

Sekarang kita telah membuat tipe tabel kustom untuk meneruskan bentuk data tabular ke prosedur tersimpan. Saatnya membuat prosedur tersimpan untuk penyisipan massal di SQL Server

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_5

Dalam kueri di atas, kami telah membuat prosedur bernama uspBulkUpdateProfile. Dan itu menerima tipe tabel yang dibuat pada langkah sebelumnya sebagai parameter, juga dikenal sebagai parameter bernilai tabel

Dalam prosedurnya, kami telah menggunakan fitur MERGE dari SQL Server untuk melakukan pembaruan dan menyisipkan kueri yang sama

# 4 Jalankan prosedurnya

Sekarang prosedur tersimpan dibuat, kita dapat menjalankan prosedur di atas untuk melakukan beberapa pembaruan dan penyisipan

Untuk tugas ini, pertama-tama, kita akan mendeklarasikan tipe tabel dan menyisipkan beberapa nilai yang diperbarui di dalamnya. Pada akhirnya, cukup jalankan prosedur dengan menyediakan variabel tipe tabel

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_6

Dalam contoh di atas, pertama, kita telah mendeklarasikan variabel tipe tabel yang ditentukan pengguna. Setelah ini, kami telah memasukkan 2 catatan yang diperbarui dalam variabel tabel. Dan pada akhirnya, kami telah menjalankan prosedur tersimpan dan menyediakan variabel tabel sebagai input

Sekarang, jika kita mengkueri tabel, kita dapat melihat bahwa 2 rekaman tersebut diperbarui di tabel Profil

Prosedur tersimpan untuk pembaruan massal di SQL Server

Membaca. Ganti nama prosedur tersimpan di SQL Server

Prosedur tersimpan di SQL Server untuk menyisipkan pembaruan menghapus

Pada bagian ini, kita akan mempelajari cara membuat stored procedure di SQL Server untuk operasi insert, update, dan delete sekaligus

Mari kita pahami implementasi ini menggunakan contoh di SQL Server. Dan untuk ini, kita akan menggunakan tabel Customertbl dari bagian pertama. Dan script SQL untuk membuat stored procedure adalah sebagai berikut

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_7

Dalam skrip di atas, kami telah membuat prosedur tersimpan yang akan menerima 7 nilai masukan. Namun, dari 7 parameter tersebut, 6 parameter digunakan untuk tabel dan 1 parameter akan digunakan untuk menentukan operasi [INSERT, DELETE, atau UPDATE].

Sekarang, mari jalankan stored procedure di atas dan pahami cara melakukan semua operasi

USE [sqlserverguides]
GO

CREATE PROCEDURE usp_InsertUpdateData
[
    @first_name VARCHAR[50],
    @last_name VARCHAR[50],
    @Email VARCHAR[50],
    @City VARCHAR[50],
    @Country VARCHAR[50]
]
AS
BEGIN
    IF EXISTS [SELECT 1 FROM [Customertbl]
    WHERE email=@Email
	]
    BEGIN
        UPDATE [Customertbl] SET 
	       first_name = @first_name,
	       last_name = @last_name,
	       city = @City,
               country = @Country
	       WHERE Email = @Email
	PRINT 'Customer Data Updated'
    END
ELSE
    BEGIN
        INSERT INTO [Customertbl] VALUES [@first_name, @last_name, @Email, @City, @Country]
	PRINT 'New Customer Data Inserted'
    END
END
_8

Dalam kueri di atas, pertama, kami menggunakan prosedur tersimpan untuk memasukkan satu catatan di Customertbl. Setelah ini, kami menggunakan prosedur tersimpan untuk memperbarui catatan yang sama. Pada akhirnya, kami menggunakan prosedur tersimpan untuk menghapus catatan itu

Berikut adalah hasil dari kode SQL di atas

Prosedur tersimpan di SQL Server untuk menyisipkan pembaruan menghapus

Anda mungkin juga ingin membaca tutorial berikut tentang SQL Server

  • SQL Server Hari Pertama Bulan
  • Tidak dapat menemukan prosedur tersimpan di SQL Server
  • Ulangi dalam prosedur tersimpan SQL Server
  • SQL Server menemukan teks dalam prosedur tersimpan
  • Cara menjalankan prosedur tersimpan di SQL Server

Jadi, dalam tutorial ini, kita telah mempelajari prosedur tersimpan di SQL Server untuk operasi penyisipan dan pembaruan. Selain itu, kami juga telah membahas serangkaian topik berikut dalam tutorial ini

  • Prosedur tersimpan untuk menyisipkan dan memperbarui di SQL Server
  • Prosedur tersimpan di SQL Server untuk memasukkan data ke dalam tabel
  • Prosedur tersimpan di SQL Server untuk dimasukkan ke dalam tabel
  • Prosedur tersimpan tanggal penyisipan SQL Server
  • Masukkan prosedur tersimpan di SQL Server dengan parameter
  • Masukkan prosedur tersimpan dalam contoh SQL Server
  • Prosedur tersimpan penyisipan massal SQL Server
  • Prosedur tersimpan SQL Server pilih insert
  • Prosedur tersimpan di SQL Server untuk menyisipkan pembaruan menghapus
  • Prosedur tersimpan tabel pembaruan SQL Server
  • Perbarui prosedur tersimpan dalam contoh SQL Server
  • Prosedur tersimpan untuk pembaruan massal di SQL Server

Bijay

Saya Bijay memiliki pengalaman lebih dari 15 tahun di Industri Perangkat Lunak. Selama ini, saya telah mengerjakan MariaDB dan menggunakannya di banyak proyek. Sebagian besar pembaca kami berasal dari Amerika Serikat, Kanada, Inggris, Australia, Selandia Baru, dll

Ingin belajar MariaDB? . Juga, saya adalah Microsoft MVP

Bagaimana cara memasukkan data massal di MySQL menggunakan prosedur tersimpan?

Sintaks untuk memasukkan data massal di MySQL . INSERT INTO table_name VALUES [data], [data], [data]; Penjelasan sintaks umum di atas sederhana saja. Ketikkan klausa INSERT INTO dan nama tabel tempat Anda ingin memasukkan data.

Bagaimana cara memasukkan 10.000 catatan di MySQL?

Ini akan melakukannya dalam satu pernyataan SQL. $sql=" INSERT INTO wp_usermeta ['user_id', 'meta_key', 'meta_value'] NILAI "; . ="[$i, 'kunci', 'nilai'],"; . Please don't use the deprecated mysql_ functions, use mysqli_ or PDO instead.

Apa perbedaan antara sisipan dan sisipan massal?

¶ Opsi 'Sisipkan massal dengan ukuran kumpulan' dan 'Gunakan sisipan rekaman tunggal' digunakan untuk menyisipkan rekaman dalam tabel database. Opsi 'Sisipkan massal dengan ukuran kumpulan' digunakan saat Anda ingin seluruh kumpulan data dimuat dalam kumpulan dengan ukuran tertentu . Biasanya, ukuran batch yang lebih besar menghasilkan kecepatan transfer yang lebih baik.

Bagaimana cara cepat memasukkan di MySQL?

Anda dapat menggunakan metode berikut untuk mempercepat penyisipan. Jika Anda menyisipkan banyak baris dari klien yang sama secara bersamaan, gunakan pernyataan INSERT dengan beberapa daftar VALUES untuk menyisipkan beberapa baris sekaligus . Ini jauh lebih cepat [berkali-kali lebih cepat dalam beberapa kasus] daripada menggunakan pernyataan INSERT baris tunggal yang terpisah.

Bài mới nhất

Chủ Đề