채택완료

[긴급] SQL 구문 질문합니다.

2017-10-06 (금) 19:36:56 2,633

SQL 구문 관련 질문입니다,

현재 iframe으로 태그해온 링크에서 오류가 나서 급하게 도메인 주소만 바꾸려고 하는데,

영상 링크가 600~700이고. 일일히 수작업하기에는 시간이 너무 오래 걸려 SQL으로 패치를 하려고 합니다.

다만 제가 SQL을 잘 몰라서 질문드립니다.

<iframe width="720" height="480" src="https://example.com/player/player.php?tubeserver=youtube&id=29182077" frameborder="0" allowfullscreen="">

이걸 

<iframe width="720" height="480" src="https://changeexample.com/?value=https://www.videochange.com/video29182077/"

로 변경해야 합니다.

29182077은 그대로 두고 [29182077은 임의의 값입니다. 게시글마다 값이 다 달라요.]

29182077 앞에 https://changeexample.com/?value=https://www.videochange.com/video 를 붙이고, 29182077 뒤에 / 를 붙이고 싶은데 이런경우 SQL 구문을 어떻게 짜야되나요?

도움 주시면 감사하겠습니다.

답변 7개 / 댓글 11개

채택된 답변
+20 포인트

조금 막연한 질문입니다.

컬럼명도 없고, 조건도 없는 상황이되겠지만.

컬럼을 임의로 col1 으로 칭하겠습니다.

일렇게 처리하시면 해결될겁니다.

답변에 대한 댓글 4개

따로 조건이 필요한가요?? SQL은 잘 몰라서요..
모든 게시글을 저런식으로 바꾸려고합니다...
칼럼명은 wr_content 입니다. 테이블명은 g5_write_video 입니다.
where 조건을 제외하고 해보았는데.. 되지 않습니다..
2017-10-07 (토) 15:52:06
sql 로 쉽게 문제 해결이 될거 같지 않은거 같습니다.
2017-10-07 (토) 01:44:40

많이 사용하는 DB 툴중에 phpMyAdmin 이 있습니다. 

phpMyAdmin 설치 후, SQL 을 실행하면 됩니다. http://blog.embian.com/69

비슷한 툴로 php 파일 하나로 실행가능한 adminer 도 있습니다. https://www.adminer.org/

http://sqlfiddle.com/#!9/17891a/1

업데이트 쿼리문법 자체는 이상이 없습니다.

phpMyAdmin 의 경우 정상적인 문법임에도

자체적으로 어떠한 필터가 걸려있는지, 동작하지 않는 쿼리문이 가끔 있습니다.

답변에 대한 댓글 4개

그러면 mysql을 직접 실행해서 작동시켜야 된다는건가요??
DataBase Client 는 여러가지 툴/접근방법 이 있습니다.

- MySQL Workbench
- DBeaver
- Toad For MySQL
- phpMyAdmin
- client with command line
...

이것저것 해보고 하나가 안되면 그 하나가 문제입니다.
지금 확인해보니 원래 실행되어야할 구문도 실행이 되지않네요..이런경우 직접 콘솔로 실행하는게 답일까요..?
그에대한 답은 직접 내리셔야 할것 같네용

혹시 Sql문을 어떻게 하셨는지

해당 부분 소스를 볼수있을까요?

답변에 대한 댓글 1개

어떻게 해야 보여드릴수있을까요??

cde76e215ecffe5e2de0a367e4fa3009_1507295653_4256.JPG
cde76e215ecffe5e2de0a367e4fa3009_1507295655_3256.JPG
cde76e215ecffe5e2de0a367e4fa3009_1507295657_9566.JPG

아래와 같이 에러가 뜹니다...

php 7.0 버전 ,mariadb 사용중입니다.. 왜이런걸까요...

테이블명하고 컬럼명 둘 다 있는 값인데 ㅠㅠ
 

모든게시글을 변경하시려면

Copy
update g5_write_video set wr_content = concat(replace(wr_content , 'https://example.com/player/player.php?tubeserver=youtube&id=',
'https://changeexample.com/?value=https://www.videochange.com/video'),'/')
where 1=1
으로 변경해보세요


답변에 대한 댓글 2개

사진덧글 참고부탁드릴게요 ㅠㅠ 도움주셔서 정말 감사합니다.
플래토님 구문 오류님 어찌어찌 해결했지만, 위 구문을 적용해도 값이 바뀌지 않습니다...

답변을 작성하려면 로그인이 필요합니다.