나는 수정할 시간이나 예산이 없다는 체계적인 문제가 있으며 임박한 운명에서 내 작은 세상을 구할 수있는 MySQL 해킹이 있었으면 좋겠다.MySQL - 데이터베이스 이름에 별명을 지정 하시겠습니까?
현재 관리하고있는 시스템을 만든 사람은 데이터베이스 이름에 문자, 숫자 및 밑줄 이외의 문자가 포함될 수 있음을 알지 못했습니다. 결과 쿼리는 다음과 같습니다.
SELECT * FROM {$db}.settings
데이터베이스 이름에 표준이 아닌 ... 대시와 같은 것이 포함되어있는 경우. 세계가 끝나고 모든 쿼리가 중단됩니다.
이 시스템에는 사용되었지만 이제는 다중 사이트 기능이 실행되기 때문에 db 접두사가 있습니다. 당신은 내가 ..와 함께이 문제를 해결할 수 있다고 생각
$db = "`{$db}`";
경우에만 .. 당신이 업데이트되는 사이트의 추적이 데이터베이스 이름 주위에 전송하는 자바 스크립트 기능의 부하를 밝혀 참조하십시오. 이 따옴표를 추가하면, 그것은 점점 databasename
을 얻는 등 대신에 모든 휴식 난 그냥 호환 ..이 시스템의 선박 무언가에 데이터베이스 이름을 설정하지 않는 이유
`databasename`
그래서 ... 나는 데이터베이스 이름을 통제 할 수없는 외부 서버 ...에
고통 ...
는 모든 후속 쿼리에 영향을 미칠 것이다 예비 쿼리에서 데이터베이스 이름을 별칭 수있는 방법이 있나요. 기본적으로 상수를 설정합니까?
다음과 같은 내용은 모든 후속 쿼리에서 작동합니다. 같은 뭔가 :
set `$db` AS database
난 그냥 데이터베이스에 $의 DB 변수를 설정하고이 가능한 경우는 .. 실행해야합니까? 당신은 하나 개의 데이터베이스 (데이터베이스에 연결 한 후 $의 DB가 변경되지 않음) 항상 작동 할 경우