我想将旧数据复制到新数据库。我的旧数据库中有一个地址列,数据类型为ntext,但在新数据库中,我必须使用3列来放置地址(address1,address2,address3,数据类型为nvarchar(60))
如何将OLD DB中的字符串拆分为新数据库?
例如: 从旧db查询:
`select address from client`
result :
Jl. Taman Crystal 2 Blok TC 2 No.79 RT.001/018, Cluster Crystal Residence, Summarecon Serpong, Pakulonan Barat - Kelapa Dua
答案 0 :(得分:1)
这实际上取决于您需要处理多少数据。
对于小套装(比如说不到10K左右),我就这样做:
写一个"提取"查询不同的部分并逐个运行它们。例如,要获取address1列,您可以使用left函数到位置
INSERT INTO STAGE (address1)
SELECT LEFT(address,location(address,','))
完成上述每个临时查询后,您可以对结果运行一些查询,并确保您对此感到满意。如果您在修改查询时遇到问题并再次运行它。
一旦您对STAGE感到满意,请将其复制到您的决赛桌。
对于较大的集合,我会编写一个具有良好错误检查,报告和异常表等的程序。真正的解析器和ETL。对于您可以手工查看和使用的少量数据而言,这是不值得的。