IT/SQL
[Sqlite] PHP + Sqlite DB파일 생성 CREATE, ALTER, SELECT 등등
월공
2021. 4. 14. 09:33
728x90
300x250
나중에 까먹을까봐 기록해두는 sqlite
select, insert, update 는 사실 자주 쓰여서 까먹을일이 없는데 컬럼으로 존재여부 확인하고 alter 시키는건 기록 ~!
//db 폴더로 경로 설정
$path = "./db";
//db 폴더 존재하지 않으면 생성
if (!is_dir($path)) {
mkdir($path, 0777, true);
}
//db 폴더 내부에 test.db 라는 파일 있는지 체크
$is_file_exist = file_exists('./db/test.db');
//db 폴더 내부에 test.db 라는 파일 없으면 생성
if(!$is_file_exist){
fopen("./db/test.db","w");
}
//sqlite DB 연동
$DB = new SQLite3('./data/RecordON.db');
//==============================================================
//test 라는 테이블이 없으면 생성
$query = " CREATE TABLE IF NOT EXISTS test ( ";
$query .= " test1 INTEGER NOT NULL, ";
$query .= " test2 TEXT ";
$query .= " ); ";
$DB->query($query);
//TMEMBER 라는 테이블에 crtime 이라는 컬럼이 있는지 없는지 여부 체크
//없으면 컬럼들 추가
$query = " SELECT COUNT(*) AS CNTREC FROM pragma_table_info('TMEMBER') WHERE name='crtime' ";
$result_cnt = $DB->query($query);
$row_cnt = $result_cnt->fetchArray() ;
if($row_cnt[0] > 0){
}else{
$query = " BEGIN TRANSACTION; ";
$query .= " ALTER TABLE TMEMBER ADD COLUMN crtime TEXT ; ";
$query .= " ALTER TABLE TMEMBER ADD COLUMN test1 TEXT ; ";
$query .= " ALTER TABLE TMEMBER ADD COLUMN test2 TEXT ; ";
$query .= " COMMIT ";
$DB->query($query);
}
728x90
300x250