A. prerequirement
1. prerequirement
Access Database Engine 2016 (x64)
https://www.microsoft.com/en-us/download/details.aspx?id=54920
2. enable access service
3. AKTIFKAN OPENROWSET
Di Microsoft SQL Server:
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'Ad Hoc Distributed Queries', 1;
RECONFIGURE;
C. Testing openrowset
1. PREPARE TABLE (kamu sudah benar)
Pastikan ini sudah ada di DB teguhth:
untuk lab, sementara skip FK dulu (biar tidak ribet)
CREATE TABLE pembelian(
KODE_PEMBELIAN char(10),
KODE_BARANG char(6),
KODE_CUSTOMER char(6),
TANGGAL_PEMBELIAN date,
JUMLAH_PEMBELIAN decimal(4,0),
PRIMARY KEY(KODE_PEMBELIAN,KODE_BARANG,KODE_CUSTOMER)
);
2. BUAT FILE EXCEL (INI KUNCI)
Buat file misalnya:
C:\backup\pembelian.xlsx
Sheet: Sheet1
penting:
header = nama kolom
format date = valid
jangan ada spasi aneh
3. TEST SELECT DARI EXCEL
kalau berhasil keluar rowset dari Excel
SELECT *
FROM OPENROWSET(
'Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;HDR=YES;Database=C:\backup\pembelian.xlsx',
'SELECT * FROM [Sheet1$]'
);
SELECT *
FROM OPENROWSET(
'Microsoft.ACE.OLEDB.16.0',
'Excel 12.0;HDR=YES;Database=C:\backup\pembelian.xlsx',
'SELECT * FROM [Sheet1$]'
);
4. INSERT KE TABLE (INI SIMULASI PRODUCTION)
INSERT INTO teguhth.dbo.pembelian
(
KODE_PEMBELIAN,
KODE_BARANG,
KODE_CUSTOMER,
TANGGAL_PEMBELIAN,
JUMLAH_PEMBELIAN
)
SELECT
KODE_PEMBELIAN,
KODE_BARANG,
KODE_CUSTOMER,
TANGGAL_PEMBELIAN,
JUMLAH_PEMBELIAN
FROM OPENROWSET(
'Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;HDR=YES;Database=C:\backup\pembelian.xlsx',
'SELECT * FROM [Sheet1$]'
);
5. Verifikasi data
select * from teguhth.dbo.pembelian;








No comments:
Post a Comment