亿万级数据入库操作流程(从已有大量的CSV格式导入数据库过程)

-- 第一步删表         
DROP TABLE [dbo].[t_stock_factor_test]
-- 第二步建表 
CREATE TABLE [dbo].[t_stock_factor_test] (
[id]  varchar(200) NULL ,
[stock_code] varchar(200) NOT NULL ,
[stock_date] varchar(200) NOT NULL ,
[factor_name] varchar(200) NOT NULL ,
[factor_value] varchar(200) NULL,
[stamp] datetime NOT NULL 
)

-- DELETE from [dbo].[t_stock_factor_test]
-- 第三步导入数据
bulk insert [dbo].[t_stock_factor_test]
from 'F:\\因子数据库\\因子数据库\\operateincometoebt_ttm.csv'
with(
    FIELDTERMINATOR=',',
    ROWTERMINATOR='\n' ,
    FIRSTROW=2,
        BATCHSIZE = 100000
)
-- 第四步删除ID列 
alter table [dbo].[t_stock_factor_test]  drop column id 

-- 第五步从表1导入表2
insert into [dbo].[t_stock_factor_test2](stock_code,stock_date,factor_name,factor_value,stamp)(select stock_code,stock_date,factor_name,factor_value,stamp from[dbo].[t_stock_factor_test])

-- 
-- CREATE TABLE [dbo].[t_stock_factor_test2] (
-- [stock_code] char(6) NOT NULL ,
-- [stock_date] char(8) NOT NULL ,
-- [factor_name] varchar(200) NOT NULL ,
-- [factor_value] numeric(20,4) NULL ,
-- [frequency] varchar(10) NULL ,
-- [update_time] datetime NULL ,
-- [flag] char(1) NULL ,
-- [stamp] datetime NOT NULL 
-- )

你可能感兴趣的:(数据库)