1.創建數據庫TCP-H
(1)右鍵“數據庫”,點擊“新建數據庫”即可
(2)用sql語言創建,此處以創建數據庫DB_test為例,代碼如下:
use master;go--檢查在當前服務器系統中的所有數據里面是否有該數據庫
IF EXISTS(SELECT * FROM sysdatabases WHERE NAME='DB_test')
--如果有刪除該數據庫DROP DATABASE DB_test
-- 創建該數據庫CREATE DATABASE DB_test ---DB_Yun 數據名稱ON PRIMARY(NAME='DB_test', --主數據文件的邏輯名FILENAME='D:developsqldataDB_test.mdf', --主數據文件存儲位置SIZE=16MB, --主數據文件的初始大小FILEGROWTH=8MB, --每次增容時增加的容量大小MAXSIZE=UNLIMITED --增量速度 unlimited無限制)LOG ON( NAME='DB_test.LDF', --日志文件FILENAME='D:developsqldataDB_test.ldf', --日志文件存儲位置SIZE=16MB, --日志文件初始大小FILEGROWTH=8MB, --日志文件每次增加的容量大小MAXSIZE=UNLIMITED
(3)創建成功
2.進行數據的導入
(1)下載csv文件
(2)進行導入,導入代碼如下
use [TPC-H];/*drop table PART;*/
CREATE TABLE PART
(P_PARTKEY int primary key,
P_NAME varchar(55),
P_MFGR char(25),
P_BRAND char(10),
P_TYPE varchar(25),
P_SIZE int,
P_CONTAINER char(10),
P_RETAILPRICE decimal,
P_COMMENT varchar(23))
TRUNCATE TABLE PART;BULK INSERT PART
FROM"D: part.csv"
WITH
(FIELDTERMINATOR=',',
ROWTERMINATOR='
')/*drop table REGION;*/
CREATE TABLE REGION
(R_REGIONKEY INT PRIMARY KEY,
R_NAME CHAR(25),
R_COMMENT VARCHAR(152))
TRUNCATE TABLE REGION;BULK INSERT REGION
FROM"D:
egion.csv"
WITH
(FIELDTERMINATOR=',',
ROWTERMINATOR='
')/*drop table NATION*/
CREATE TABLE NATION
(N_NATIONKEY INT PRIMARY KEY,
N_NAME CHAR(25),
N_REGIONKEY INT FOREIGN KEY REFERENCES REGION(R_REGIONKEY),
N_COMMENT VARCHAR(152))
TRUNCATE TABLE NATION;BULK INSERT NATION
FROM"D:
ation.csv"
WITH
(FIELDTERMINATOR=',',
ROWTERMINATOR='
')/*drop table SUPPLIER*/
CREATE TABLE SUPPLIER
(S_SUPPKEY int PRIMARY KEY,
S_NAME char(25),
S_ADDRESS varchar(40),
S_NATIONKEY INT FOREIGN KEY REFERENCES NATION(N_NATIONKEY),
S_PHONE CHAR(15),
S_ACCTBAL DECIMAL,
S_COMMENT VARCHAR(101))
TRUNCATE TABLE SUPPLIER;BULK INSERT SUPPLIER
FROM"D: supplier.csv"
WITH
(FIELDTERMINATOR=',',
ROWTERMINATOR='
')/*drop table PARTSUPP*/
CREATE TABLE PARTSUPP
(PS_PARTKEY INT FOREIGN KEY REFERENCES PART(P_PARTKEY),
PS_SUPPKEY INT FOREIGN KEY REFERENCES SUPPLIER(S_SUPPKEY),
PS_AVAILQTY INT,
PS_SUPPLYCOST DECIMAL,
PS_COMMENT VARCHAR(199),
PRIMARY KEY(PS_PARTKEY,PS_SUPPKEY))
TRUNCATE TABLE PARTSUPP;BULK INSERT PARTSUPP
FROM"D: partsupp.csv"
WITH
(FIELDTERMINATOR=',',
ROWTERMINATOR='
')/*drop table CUSTOMER*/
CREATE TABLE CUSTOMER
(C_CUSTKEY INT PRIMARY KEY,
C_NAME VARCHAR(25),
C_ADDRESS VARCHAR(40),
C_NATIONKEY INT FOREIGN KEY REFERENCES NATION(N_NATIONKEY),
C_PHONE CHAR(15),
C_ACCTBAL DECIMAL,
C_MKTSEGMENT CHAR(10),
C_COMMENT VARCHAR(117))
TRUNCATE TABLE CUSTOMER;BULK INSERT CUSTOMER
FROM"D: customer(1).csv"
WITH
(FIELDTERMINATOR=',',
ROWTERMINATOR='
')/*drop table ORDERS*/
CREATE TABLE ORDERS
(O_ORDERKEY INT PRIMARY KEY,
O_CUSTKEY INT,
O_ORDERSTATUS CHAR(1),
O_TOTALPRICE DECIMAL,
O_ORDERDATE DATE,
O_ORDERPRIORITY CHAR(15),
O_CLERK CHAR(15),
O_SHIPPRIORITY INT,
O_COMMENT VARCHAR(79),
FOREIGN KEY(O_CUSTKEY) REFERENCES CUSTOMER(C_CUSTKEY))
TRUNCATE TABLE ORDERS;BULK INSERT ORDERS
FROM"D: orders.csv"
WITH
(FIELDTERMINATOR=',',
ROWTERMINATOR='
')/*drop table LINEITEM*/
CREATE TABLE LINEITEM
(L_ORDERKEY INT FOREIGN KEY REFERENCES ORDERS(O_ORDERKEY),
L_PARTKEY INT FOREIGN KEY REFERENCES PART(P_PARTKEY),
L_SUPPKEY INT FOREIGN KEY REFERENCES SUPPLIER(S_SUPPKEY),
L_LINENUMBER INT,
L_QUANTITY DECIMAL,
L_EXTENDEDPRICE DECIMAL,
L_DISCOUNT DECIMAL,
L_TAX DECIMAL,
L_RETURNFLAG CHAR(1),
L_LINESTATUS CHAR(1),
L_SHIPDATE DATE,
L_COMMITDATE DATE,
L_SHIPINSTRUCT CHAR(25),
L_SHIPMODE CHAR(50),
L_COMMENT VARCHAR(60),
PRIMARY KEY(L_ORDERKEY,L_LINENUMBER))
TRUNCATE TABLE LINEITEM;BULK INSERT LINEITEM
FROM"D: lineitem.csv"
WITH
(FIELDTERMINATOR=',',
ROWTERMINATOR='
')
(3)導入成功
3.進行數據的導出
(1)下載安裝bcp工具
(2)使用導出語句
bcp [TPC-H].[dbo].[PART] out “D:學校d大二下數據庫實驗一數據文件 ile.csv” -c -t -T -S . -U sa -P 1234
(3)導出成功