怎样把中间以不定空格为间隔符的TXT数据文件导入Sql Server中?

ld2099 2007-01-23 01:44:04
从纯真网络上下的IP库,解压成txt文件后,数据格式如下:
0.0.0.0 0.255.255.255 IANA CZ88.NET
1.0.0.0 1.255.255.255 IANA CZ88.NET
2.0.0.0 2.255.255.255 IANA CZ88.NET
3.0.0.0 3.255.255.255 美国 新泽西通用电气公司
4.0.0.0 4.10.255.255 美国 CZ88.NET
4.11.0.0 4.11.255.255 美国 夏威夷
4.12.0.0 4.19.77.255 美国 CZ88.NET
4.19.78.0 4.19.78.255 美国 西南政法大学
4.19.79.0 4.19.79.63 美国 Armed Forces Radio/Television
4.19.79.64 4.21.177.111 美国 CZ88.NET
4.21.177.112 4.21.177.127 美国 Kraft Group
4.21.177.128 4.21.177.255 美国 南新汉普郡学院
4.21.178.0 4.36.124.127 美国 CZ88.NET
4.36.124.128 4.36.124.255 美国 Technical Resource Connections Inc
4.36.125.0 4.36.127.255 美国 坦帕大学
4.36.128.0 4.37.215.255 美国 CZ88.NET
4.37.216.0 4.37.219.255 美国 德克萨斯女子大学
4.37.220.0 4.41.60.255 美国 CZ88.NET
4.41.61.0 4.41.61.255 美国 EARTHLINK公司
4.41.62.0 4.43.68.255 美国 CZ88.NET
4.43.69.0 4.43.69.95 美国 罗斯门特学院
三个字段以不定空格为间隔符,但是也不能把空格替换成别的,因为ip所属地区有空格,这样的数据怎么导入Sql Server中呀?直接导入时候必须选择间隔符,所一些上述数据就被认为一个字段。
但是导入Access中没有问题,可以选择固定宽度,把地区的宽度弄长一些就可以了。
呵呵,不要告诉我:先导入 Access中,然后再导入Sql Server中。
...全文
400 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ld2099 2007-01-26
  • 打赏
  • 举报
回复
结帖
ld2099 2007-01-26
  • 打赏
  • 举报
回复
方法可行,但是还得需要建立临时表
wwh999 2007-01-23
  • 打赏
  • 举报
回复
子陌出手了啊...嘿嘿!~

看你上面贴出来的数据,根据字符栏位来取成列就成了(每列的长度是固定的),然后再去左右的空格..刚看到,子陌已经顶了。
yuanyuyuyu 2007-01-23
  • 打赏
  • 举报
回复
RTRIM()!应该用这个吧,要是会编程的话可以现将数据转换一下
iamltd 2007-01-23
  • 打赏
  • 举报
回复
直接dts都可以啊

设定为固定间隔的字段就可以了
子陌红尘 2007-01-23
  • 打赏
  • 举报
回复
另外,使用BCP也可以指定导入数据的格式。
子陌红尘 2007-01-23
  • 打赏
  • 举报
回复
先作为一个字段 COL1 导入数据库中的中间表 MID ,然后用substring()函数来取数据:

insert into 目标表(...)
select
rtrim(left(COL1 ,16)) as 起始IP,
rtrim(substring(COL1,17,16)) as 截至IP,
stuff(COL1,1,32,'') as 地区信息描述
from
MID
PowerBI系列之Power Query专题1.  获取数据 数据源种类介绍和获取Excel数据源输入数据和拷贝数据:创建辅助表解析Json/XML数据格式获取Web网页数据和URL添加动态参数连接数据的四种模式:Import、DirectQuery、Live Connection、Dual双 属于混合模式连接数据库:Sql server、 Mysql(直连但是必须先安装一个mysql插件)DirectQuery直连查询:Sql serverODBC方式获取数据表关联或多个Sql或调用存储过程获取数据SQL动态传参和自定义函数: sql使用参数或数据库名称使用参数连接Sharepoint和OneDrive数据源连接Dataset和Dataflow 替换本地数据源为Sharepoint数据源并保留数据处理操作 终止当前数据刷新Loading:Cancel Query数据源设置-重置数据连接凭证PBIDS连接数据源创建和使用报表模块(输入或值列表)利用报表模板和参数控制线下报表数据权限DirectQuery启用自动页面刷新和更改检测管理聚合表提高DirectQuery查询性能动态M查询参数提高DirectQuery查询性能添加数据刷新时间 DateTime.LocalNow()和Getdate()2.  数据清洗和M语言M语言和官方文档介绍PowerQuery查阅M函数:=#shared, Ctrl+Space提示数据清洗之常用技能:提升标题、更改数据类型、保留删除错误或空行,删除重复项、选择列和删除列、填充单元格、合并列、拆分、提取、替换、条件替换、添加自定义列,添加条件列、添加索引列、分组、添加年月日列、追加和合并查询透视和逆透视以及转置合并单元格的Excel文件处理导入文件多Excel文件并合并解决多文件合并列顺序不一致使用参数和函数批量导入文件 文本提取文、英文、数字等处理双引号转义 列拆分详解解决列名改变错误解决列丢失错误动态显示、排序和重命名列为所有列名添加前缀列名字母大写和分隔调整Trim标题列的多余空格如何处理load数据错误为什么load的Excel数据有null空行为什么load的Excel数据标题在第二行灵活添加占位规范同类相似数据数据按多列排序为分组添加Index序号分组内值合并诊断工具分析数据处理过程PowerQuery小技巧分享 新冠病例活动轨迹地图标识 

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧