求一条sql语句

hbqhwjj 2009-03-26 03:09:06
一个字符串:‘2009020100000035|1322364207157470001|99|1425.55 ’对应一个表的4个字段,如何将这条记录导入数据库?
...全文
85 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
htl258_Tony 2009-03-26
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 happyflystone 的回复:]
SQL code
create table ta(col1 varchar(20),col2 varchar(20),col3 varchar(20),col4 varchar(20))

declare @s varchar(100)
set @s = '2009020100000035|1322364207157470001|99|1425.55 '

set @s = 'insert into ta select '''+replace(@s,'|',''' , ''')+''''
exec(@s)
select * from ta

drop table ta



col1 col2 col3 col4
------…
[/Quote]顶
-狙击手- 2009-03-26
  • 打赏
  • 举报
回复

create table ta(col1 varchar(20),col2 varchar(20),col3 varchar(20),col4 varchar(20))

declare @s varchar(100)
set @s = '2009020100000035|1322364207157470001|99|1425.55 '

set @s = 'insert into ta select '''+replace(@s,'|',''' , ''')+''''
exec(@s)
select * from ta

drop table ta



col1 col2 col3 col4
-------------------- -------------------- -------------------- --------------------
2009020100000035 1322364207157470001 99 1425.55

(所影响的行数为 1 行)
lass_name 2009-03-26
  • 打赏
  • 举报
回复
先定义函数实现分割,然后在一次插入数据。
-狙击手- 2009-03-26
  • 打赏
  • 举报
回复
错了,当你是文本文件了,

直接用一个分割函数 ,

看看这个例子:

create table ta( col varchar(100))
insert ta select
'aa/bb/cc/dd/ee/ff' union all select
'aaa/bbb/ccc/ddd/eee/ff/ggg'

go

--加一个分隔函数:
create function F_split(
@s varchar(8000), --包含多个数据项的字符串
@pos int, --要获取的数据项的位置
@split varchar(10) --数据分隔符
)RETURNS varchar(100)
AS
BEGIN
IF @s IS NULL RETURN(NULL)
DECLARE @splitlen int --分隔符长度
SELECT @splitlen=LEN(@split+'a')-2
WHILE @pos>1 AND charindex(@split,@s+@split)>0
SELECT @pos=@pos-1,
@s=stuff(@s,1,charindex(@split,@s+@split)+@splitlen,'')
RETURN(nullif(left(@s,charindex(@split,@s+@split)-1),''))
END
GO

select dbo.F_split(col,1,'/'),dbo.F_split(col,3,'/'),dbo.F_split(col,5,'/')
from ta

drop table ta
drop function F_split








sdhdy 2009-03-26
  • 打赏
  • 举报
回复
insert tb select replace('2009020100000035|1322364207157470001|99|1425.55','|',',')
-狙击手- 2009-03-26
  • 打赏
  • 举报
回复
bcp

22,181

社区成员

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

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