0
데이터베이스를 초기 상태 (모든 테이블의 일부 하드 코드 된 항목)로 재설정하는 python 스크립트를 작성하고 있습니다. db는 기본 키와 외래 키가있는 여러 테이블로 구성됩니다.모든 테이블에서 항목 제거
스크립트를 실행할 때마다 모든 테이블에서 모든 이전 항목을 제거하고 기본 키 카운터를 재설정하고 샘플 항목을 삽입해야합니다.
은 현재이 같은이 달성하기 위해 노력하고 있어요 :이 때문에 일부 테이블에서 외래 키의 존재로 작동하지 않는# Delete all the entries from the tables
cursor.execute("DELETE FROM table1")
cursor.execute("DELETE FROM table2")
cursor.execute("DELETE FROM table3")
# Reset the primary key counter and insert sample entries
cursor.execute("ALTER TABLE table1 AUTO_INCREMENT = 1")
cursor.execute("INSERT INTO table1(username, password) VALUES('user01', '123')")
cursor.execute("ALTER TABLE table2 AUTO_INCREMENT = 1")
cursor.execute("INSERT INTO table2(column1, column2) VALUES('column1_data', 'column2_data')")
(그것은 나를 삭제하지 않습니다).
가 나는 models.py 스크립트를 사용하여 테이블을 생성 (나는 또한 장고를 사용), 그래서 내가이 다음과 같은 방법으로 해결할 수 있다고 생각 :- 는 프로그래밍 방식으로 데이터베이스를 제거하고 같은과 새로 만듭니다 이것은 좋은 솔루션입니다
- 삽입 샘플 데이터 I는
을 쓴 스크립트를 사용하여 DB에 빈 테이블을 생성하는
다음과 같은 의미라면 :'DROP DATABASE mydb; CREATE DATABASE mydb;'그 다음에'./manage.py syncdb', 그러면 아마도 가장 쉽습니다. – Aya