-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCrop_total_sql_server.sql
More file actions
113 lines (95 loc) · 2.51 KB
/
Crop_total_sql_server.sql
File metadata and controls
113 lines (95 loc) · 2.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
-- Connect to Vostro MSSQL
--- From bash
-- sqlcmd -S 192.168.0.191,1433 -U SA -P
--- From VSCode
-- MS SQL:Connect
-- Copy file to SQL machine (Run in bash)
-- scp /home/agar2/Documents/WFP/crop_total2.csv vostro@192.168.0.191:/home/vostro/Documents/WFP/crop_total2.csv
-- List databases
SELECT Name from sys.databases
-- Create login account
CREATE LOGIN vostro WITH PASSWORD = 'C0ffeemilk';
-- Add login account to executive role
ALTER ROLE serveradmin ADD MEMBER ['vostro'];
GO
-- Create a new database called 'WFP'
-- Connect to the 'master' database to run this snippet
USE master
GO
-- Create the new database if it does not exist already
IF NOT EXISTS (
SELECT name
FROM sys.databases
WHERE name = N'WFP'
)
CREATE DATABASE WFP
GO
-- STAGING TABLE --
DROP TABLE [dbo].[crop_total_staging2]
USE WFP;
CREATE TABLE dbo.crop_total_staging2
(
-- ID INT NOT NULL PRIMARY KEY IDENTITY,
area CHAR(255) NOT NULL,
item CHAR(255) NOT NULL,
element CHAR(255) NOT NULL,
year INT,
unit CHAR (255) NOT NULL,
value FLOAT
);
GO
BULK INSERT crop_total_staging2
FROM '/home/vostro/Documents/WFP/FAO Data/crop_data.csv'
WITH
(
FIRSTROW = 2,
FIELDTERMINATOR = '|', --CSV field delimiter
ROWTERMINATOR = '0x0A',
FIELDQUOTE = '"',
FORMAT = 'CSV',
TABLOCK
-- KEEPIDENTITY
);
SELECT COUNT(*) FROM dbo.crop_total_staging2;
SELECT TOP (20) * FROM dbo.crop_total_staging2;
SELECT DISTINCT(area) FROM dbo.crop_total_staging2;
CREATE VIEW countries
AS
SELECT COUNT(area)
FROM dbo.crop_total_staging2
GROUP BY area;
---------------------------------------------SECTION
-- Show table structure info --
sp_help crop_total;
sp_help crop_total_staging;
sp_help livestock_staging;
exec sp_columns crop_total_staging;
SELECT COUNT(*) FROM crop_total_staging;
SELECT * FROM sys.database_role_members;
SELECT SP.name,
SP.principal_id,
SP.sid,
SP.type,
SP.type_desc,
SP.is_disabled,
SP.create_date,
SP.modify_date,
SP.default_database_name,
SP.default_language_name,
SP.credential_id,
SP.owning_principal_id,
SP.is_fixed_role
FROM sys.server_principals AS SP;
---------------------------------------------SECTION
SELECT TOP 10 CONVERT(INT, year) from dbo.crop_total_staging;
SELECT TOP 10 year from dbo.crop_total_staging;
SELECT TOP 10 CAST([year] AS INT) from dbo.crop_total_staging;
select
case
when isnumeric(year) = 1 then
cast(year AS int)
else
NULL
end
AS 'my_NvarcharColumnmitter'
from crop_total_staging;