INSERT ANORMAL

USUARIO.EXCLUIDOS 06/06/2007 17:39:44
#220100
Saudações,
Tenho um string com vários códigos separados por vírgula
ex: strsql = 10,12,13,14

Quero criar uma tabela com esses códigos usando o comando insert,
[txt-color=#ff0000]MAS SEM USAR LOOP[/txt-color]

Algo do Tipo: Insert Into ##Temp select (10,12,13,14)
obs: O insert acima não funciona, é apenas demonstrativo.

Desde já grato!
HUGOSSOUZA 06/06/2007 17:56:58
#220105
Resposta escolhida
faz um teste.. ve se é isso:
todos os campos tem q ta na mesma ordem q ta na tabela

Private Sub Command1_Click()

Dim mSQL As String
Dim valor As String

valor = "10,20,1,3"

mSQL = "insert into teste values ('" & valor & "')"

MsgBox Replace(mSQL, "'", "")

End Sub




USUARIO.EXCLUIDOS 06/06/2007 18:05:33
#220110
Lamento mas desconheço este comando SQL, arrisco afirmar que não existe.

MAS SERIA POSSIVEL FAZER:

INSERT INTO tabela (fields) VALUES (SELECT fields FROM tabela2)

Ou seja, se estes valores vieram do próprio banco poderiamos fazer um insert com select (Internamente o BD usaria Linguagem C, mas usaria Loop ... umas 100x ou mais rapidamente que VB)

Lembre-se que as regras de integridade referencial e null-not null terão que ser observadas para não haver erro.
USUARIO.EXCLUIDOS 06/06/2007 18:16:52
#220113
Esqueci de comentar que é em SQLServer, fiz como o Hugo mostrou só que deu erro

declare @strsql varchar(50)
declare @sql varchar (100)
set @strsql = '5,6,7'
create table #temps (cod int)
set @sql = 'insert into #temps values(' & Replace(@strsql, "'", " ") & ')'
execute(@sql)
select * from #temps

Deu o seguinte erro:
Server: Msg 207, Level 16, State 3, Line 8
Invalid column name ' '.
Server: Msg 207, Level 16, State 1, Line 8
Invalid column name '''.
HUGOSSOUZA 06/06/2007 18:19:47
#220114
todos esse valores são para o mesmo campo?

se for não tem como mesmo... pelo menos eu não conheço.. vai ter q usar um loop.

ou vc faz um loop ou um insert igual do emerson.

esse meu insert é um valor para cada campo da tabela.

Tópico encerrado , respostas não são mais permitidas