Excel Formülleri ile SQL'e Veri Aktarım Scripti
Aşağıdaki gibi bir Excel tablosunda veri varsa ve bunu tabloyu sql de kullanmak gerektiği zaman Sql Import ile datayı SQL'e alınması en çok kullanılan yöntemdir.
Ancak bu her zaman pratik olmayacağı gibi bazı durumlarda import yetkiside olmayabilir. Bu durumda veriyi import etmek yerine Excelde veriyi oluşturacak script yazarak kullanabiliriz. Aşağıdaki formül ile her alan birleştirilip bir satır elde eldilmekte ve bu satırlar union ile birleştirilerek scritp ile tablo elde edilmiş olur.
Bu scriptin son satırında union ifadesi olmaması gerekir çünkü başka birleştireceği satır yoktur.
="SELECT "&A2 &" AS ID,'"&B2&"' AS ADI,'"& C2 &"' AS SOYADI,'" &YIL(D2)&"-"&AY(D2)&"-"&GÜN(D2) &"' AS DTARIH UNION"
ID | ADI | SOYADI | DTARIH |
1 | AHMET1 | DENEME1 | 20.10.1990 |
2 | AHMET2 | DENEME2 | 31.01.1988 |
3 | AHMET3 | DENEME3 | 31.08.1985 |
4 | AHMET4 | DENEME4 | 11.05.1984 |
5 | AHMET5 | DENEME5 | 20.08.1980 |
6 | AHMET6 | DENEME6 | 28.05.1978 |
7 | AHMET7 | DENEME7 | 25.06.1990 |
8 | AHMET8 | DENEME8 | 22.08.1992 |
9 | AHMET9 | DENEME9 | 22.12.1979 |
10 | AHMET10 | DENEME10 | 06.09.1993 |
11 | AHMET11 | DENEME11 | 18.01.1981 |
12 | AHMET12 | DENEME12 | 29.03.1983 |
13 | AHMET13 | DENEME13 | 05.06.1982 |
14 | AHMET14 | DENEME14 | 28.05.1990 |
15 | AHMET15 | DENEME15 | 15.02.1991 |
16 | AHMET16 | DENEME16 | 03.05.1977 |
17 | AHMET17 | DENEME17 | 11.05.1984 |
18 | AHMET18 | DENEME18 | 19.08.1987 |
19 | AHMET19 | DENEME19 | 11.11.1970 |
20 | AHMET20 | DENEME20 | 11.05.1980 |
21 | AHMET21 | DENEME21 | 29.11.1979 |
22 | AHMET22 | DENEME22 | 15.03.1992 |
23 | AHMET23 | DENEME23 | 16.12.1988 |
24 | AHMET24 | DENEME24 | 08.03.1996 |
25 | AHMET25 | DENEME25 | 31.08.1995 |
Scrip için Excel formülü sonucu Excel görünümü :
ID | ADI | SOYADI | DTARIH | SCRIPT İÇİN FORMÜL |
1 | AHMET1 | DENEME1 | 20.10.1990 | SELECT 1 AS ID,'AHMET1' AS ADI,'DENEME1' AS SOYADI,'1990-10-20' AS DTARIH UNION |
2 | AHMET2 | DENEME2 | 31.01.1988 | SELECT 2 AS ID,'AHMET2' AS ADI,'DENEME2' AS SOYADI,'1988-1-31' AS DTARIH UNION |
3 | AHMET3 | DENEME3 | 31.08.1985 | SELECT 3 AS ID,'AHMET3' AS ADI,'DENEME3' AS SOYADI,'1985-8-31' AS DTARIH UNION |
4 | AHMET4 | DENEME4 | 11.05.1984 | SELECT 4 AS ID,'AHMET4' AS ADI,'DENEME4' AS SOYADI,'1984-5-11' AS DTARIH UNION |
5 | AHMET5 | DENEME5 | 20.08.1980 | SELECT 5 AS ID,'AHMET5' AS ADI,'DENEME5' AS SOYADI,'1980-8-20' AS DTARIH UNION |
6 | AHMET6 | DENEME6 | 28.05.1978 | SELECT 6 AS ID,'AHMET6' AS ADI,'DENEME6' AS SOYADI,'1978-5-28' AS DTARIH UNION |
7 | AHMET7 | DENEME7 | 25.06.1990 | SELECT 7 AS ID,'AHMET7' AS ADI,'DENEME7' AS SOYADI,'1990-6-25' AS DTARIH UNION |
8 | AHMET8 | DENEME8 | 22.08.1992 | SELECT 8 AS ID,'AHMET8' AS ADI,'DENEME8' AS SOYADI,'1992-8-22' AS DTARIH UNION |
9 | AHMET9 | DENEME9 | 22.12.1979 | SELECT 9 AS ID,'AHMET9' AS ADI,'DENEME9' AS SOYADI,'1979-12-22' AS DTARIH UNION |
10 | AHMET10 | DENEME10 | 06.09.1993 | SELECT 10 AS ID,'AHMET10' AS ADI,'DENEME10' AS SOYADI,'1993-9-6' AS DTARIH UNION |
11 | AHMET11 | DENEME11 | 18.01.1981 | SELECT 11 AS ID,'AHMET11' AS ADI,'DENEME11' AS SOYADI,'1981-1-18' AS DTARIH UNION |
12 | AHMET12 | DENEME12 | 29.03.1983 | SELECT 12 AS ID,'AHMET12' AS ADI,'DENEME12' AS SOYADI,'1983-3-29' AS DTARIH UNION |
13 | AHMET13 | DENEME13 | 05.06.1982 | SELECT 13 AS ID,'AHMET13' AS ADI,'DENEME13' AS SOYADI,'1982-6-5' AS DTARIH UNION |
14 | AHMET14 | DENEME14 | 28.05.1990 | SELECT 14 AS ID,'AHMET14' AS ADI,'DENEME14' AS SOYADI,'1990-5-28' AS DTARIH UNION |
15 | AHMET15 | DENEME15 | 15.02.1991 | SELECT 15 AS ID,'AHMET15' AS ADI,'DENEME15' AS SOYADI,'1991-2-15' AS DTARIH UNION |
16 | AHMET16 | DENEME16 | 03.05.1977 | SELECT 16 AS ID,'AHMET16' AS ADI,'DENEME16' AS SOYADI,'1977-5-3' AS DTARIH UNION |
17 | AHMET17 | DENEME17 | 11.05.1984 | SELECT 17 AS ID,'AHMET17' AS ADI,'DENEME17' AS SOYADI,'1984-5-11' AS DTARIH UNION |
18 | AHMET18 | DENEME18 | 19.08.1987 | SELECT 18 AS ID,'AHMET18' AS ADI,'DENEME18' AS SOYADI,'1987-8-19' AS DTARIH UNION |
19 | AHMET19 | DENEME19 | 11.11.1970 | SELECT 19 AS ID,'AHMET19' AS ADI,'DENEME19' AS SOYADI,'1970-11-11' AS DTARIH UNION |
20 | AHMET20 | DENEME20 | 11.05.1980 | SELECT 20 AS ID,'AHMET20' AS ADI,'DENEME20' AS SOYADI,'1980-5-11' AS DTARIH UNION |
21 | AHMET21 | DENEME21 | 29.11.1979 | SELECT 21 AS ID,'AHMET21' AS ADI,'DENEME21' AS SOYADI,'1979-11-29' AS DTARIH UNION |
22 | AHMET22 | DENEME22 | 15.03.1992 | SELECT 22 AS ID,'AHMET22' AS ADI,'DENEME22' AS SOYADI,'1992-3-15' AS DTARIH UNION |
23 | AHMET23 | DENEME23 | 16.12.1988 | SELECT 23 AS ID,'AHMET23' AS ADI,'DENEME23' AS SOYADI,'1988-12-16' AS DTARIH UNION |
24 | AHMET24 | DENEME24 | 08.03.1996 | SELECT 24 AS ID,'AHMET24' AS ADI,'DENEME24' AS SOYADI,'1996-3-8' AS DTARIH UNION |
25 | AHMET25 | DENEME25 | 31.08.1995 | SELECT 25 AS ID,'AHMET25' AS ADI,'DENEME25' AS SOYADI,'1995-8-31' AS DTARIH |
Excel SQL Aktarim Script Örneği