2013-05-21 2 views
0

새로 등록 할 때마다 PHP를 사용하여 각 사용자에 대한 데이터베이스를 만듭니다. 각 데이터베이스에는 8 개의 테이블 세트가 있습니다. 그래서 나는 각각의 새로운 사용자에 대해 8 개의 테이블을 생성하거나 새로운 데이터베이스가 생성 될 때마다 말하고 싶습니다.MySQL에서 새로 생성 된 모든 데이터베이스에 테이블 만들기

트리거는 테이블에서만 사용할 수 있기 때문에 사용할 수 없습니다. 그 밖의 무엇이 여기에서 끝날 수 있습니까? 내가 누락 된 매우 간단한 것이 있습니까?

업데이트 : 방금 ​​저장 프로 시저가있는 것으로 나타났습니다. 이러한 저장 프로 시저를 트리거처럼 사용하여 새 데이터베이스 생성을 확인하고 실행할 수 있습니까?

+1

왜 사용자 당 새 데이터베이스를 만들겠습니까? 일반 테이블을 사용하는 것이 더 쉬울까요? 그 외 : 일부 PHP 변수가있는 사용자 정의 create 문이 있습니다. 스크립트 기반으로 데이터베이스를 생성하는 것은 afaik –

+0

이 가능하지 않습니다. 각 사용자마다 다른 사용자 집합이 있기 때문입니다. 사용자를 회사/기업으로 생각할 수 있습니다. –

답변

1

데이터베이스를 만든 후에 만들기 스크립트를 실행하십시오. 나는 그 기능이 복제하기 쉽고 매우 드물게 사용되기 때문에 MySQL의 "기본 테이블"옵션을 알지 못합니다.

+0

내 업데이트를 확인하십시오. –

+1

이미 트리거가 있습니다. 새 데이터베이스가 만들어 질 때입니다. 이미 PHP에서 데이터베이스를 작성하고 있다면 거기에서도 채울 수 있습니다. 이는 실제로 응용 프로그램 수준의 기능이며 데이터 영역을 벗어나지는 않습니다. – Kendrick

+0

나는 현재 정확히 똑같은 방식으로하고있다. 나는 어딘가에서 서버 수준에서 동일한 기능을 구현하면 시간과 컴퓨팅 측면에서의 노력을 줄일 것이므로이 점을 생각했다. 귀하의 의견을 주셔서 감사합니다. –

1

테이블을 사용하여 db_list라고하는 제어 데이터베이스를 만듭니다. 그 테이블에 집안일을하기위한 방아쇠를 당겨 라. (고객 데이터베이스 생성 및 보조금 설정)

+0

하지만이 방법을 사용하면 새 데이터베이스를 추가 할 수 있습니까? –

+1

아니, 다른 방법으로 작동합니다. control.db_list에 새 고객의 이름이있는 행을 삽입하고 트리거가 데이터베이스를 만들도록하십시오. – mogul

관련 문제