• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

AriOps

[Line Breaks] Quebras de Linha numa string ISQL

11 mensagens neste tópico

Boas,

Estou com um problema a nível do envio de código ISQL para o SGBD, em que preciso de fazer quebras de linha (aqui entra o php penso eu), porque se a query não estiver formatada decentemente não executa, exemplo (isto só acontece com statments):

se tiver:

USE master go CREATE DATABASE teste3 ON principal = 20 go

ele não executa, mas se tiver:

USE master
go
CREATE DATABASE teste3
ON principal = 20
go

ele já executa...já experimentei com o \n mas não deu...

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas,

Estou com um problema a nível do envio de código ISQL para o SGBD, em que preciso de fazer quebras de linha (aqui entra o php penso eu), porque se a query não estiver formatada decentemente não executa, exemplo (isto só acontece com statments):

se tiver:

USE master go CREATE DATABASE teste3 ON principal = 20 go

ele não executa, mas se tiver:

USE master
go
CREATE DATABASE teste3
ON principal = 20
go

ele já executa...já experimentei com o \n mas não deu...

Cumps

Queres criar uma database dentro da database master  :dontgetit:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso não funciona assim... ;)

aquilo não é a database master, mas sim um device (acho que posso chamar assim) master, em que assentam todas as bases de dados.

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

"USE master"  esse comando serve para utilizar a database master

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Vê a imagem em anexo, é o comando para usar um database device.

Mas o meu problema não é com a query mas sim com a forma como ela é enviada ao SGBD, sem as quebras de linha simplesmente não funciona...

Cumps

http://www.ptattacks.com/device.png

PS: A Pasta de Anexos está cheia...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Tens a certeza de que necessitas de line breaks?

Normalmente o envio de um comando dispensa o GO no final. Dependendo do SGBD, o ; é separador e é possível enviar tudo numa string só.

Podes ter um script que faça isso, pode até ser gerado automaticamente, que pode ser invocado a partir do PHP.

Outra forma é tentares juntar o \r\n, ou seja o character 10 e o 13 (line break windows).

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas,

M6 é isso mesmo, o ; serve na perfeição, mas quando fui meter no PHP percebi uma coisa: Não preciso dos "go", por isso também não foram necessárias as quebras de linha.

Código final:

USE master CREATE DATABASE teste3 ON principal = 20

Obrigado a todos

Cumps

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mais um cliente do P@P satisfeito! :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não sei como escreves o comando nem como o envias mas normalmente para criar as quebras de linha eu uso o nl2br($var)... Pode ser que resulte embora isto seja para gerar código html com quebras de linha apartir de um texto que apenas tem um "enter" entre caracteres.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não sei como escreves o comando nem como o envias mas normalmente para criar as quebras de linha eu uso o nl2br($var)... Pode ser que resulte embora isto seja para gerar código html com quebras de linha apartir de um texto que apenas tem um "enter" entre caracteres.

São coisas diferentes. O <BR> aplica-se ao HTML, que é uma estrutura de apresentação, e o caso aqui refere-se ao código ASCII de texto/string.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora