본문 바로가기

db6

postgresql sequence 사용하기 postgresql의 sequence에 대해서 다음과 같은 명령어들이 있다. 다음의 가상 테이블이 있다고 가정한다. table명 : member column명 : member_id, member_name 시퀀스 생성 -- serial4를 입력하여 자동으로 시퀀스를 생성하는 방법 CREATE TABLE member ( member_id serial4 NOT NULL, member_name varchar NOT NULL, ); -- mem_seq를 수동으로 생성하고 관리하는 방법 CREATE SEQUENCE mem_seq START 1; CREATE TABLE member ( member_id int4 NOT NULL DEFAULT nextval('mem_seq'::regclass), -- 회원번호 memb.. 2023. 8. 24.
Maximum execution time of 120 seconds exceeded codeigniter3, MySQL을 사용하던 중 발생. query가 장시간 실행될 때 발생한다. 원인은 php.ini의 설정 중 max_execution_time의 값이 120으로 설정되어 있기 때문. 다음의 해결방법이 있다. 1. max_execution_time의 값을 조정. - 어플리케이션 전체에 영향을 받게 된다. 2. 스크립트 상단에 set_time_limit(0)을 설정. - 해당 스크립트 부분에서만 영향을 받게 된다. 2021. 11. 4.
postgresql에서 auto increment 설정(자동 index증가) My Sql에서는 sequence번호를 자동으로 생성해주는 auto increament 기능이 있어서 편하게 사용했다. 최근 postgrespostgresql를 관계형 DB로 사용할 기회가 생겨 테이블 스키마를 생성하던 중 해당 문제에 직면하였고 해결하였기에 기록을 하고자 글을 쓴다. 코드의 예시는 다음과 같다. CREATE SEQUENCE example_id_seq; CREATE TABLE example_table ( id integer NOT NULL DEFAULT nextval(example_id_seq) PRIMARY KEY, name varchar NOT NULL, nick varchar NOT NULL ); ALTER SEQUENCE example_id_seq OWNED BY example_t.. 2020. 6. 29.
Room에서 LiveData사용과 paging처리 Room을 이용하여 내부에 대량의 데이터를 저장할 경우. 저장된 데이터를 페이징처리를 통하여 효율적인 리스트를 표현하는 것이 좋다. Dao @Query("SELECT * FROM table") abstract fun selectList() : DataSource.Factory 페이징처리 부분 val config = PagedList.Config.Builder() .setInitialLoadSizeHint(20) //최초 로드사이즈는 20개 .setPageSize(10) // 페이징당 10개 .setPrefetchDistance(10) // 10개마다 다음페이지를 미리불러오기 .setEnablePlaceholders(true) .build() var pagedItems = LivePagedListBuild.. 2019. 9. 5.
SharedPreferences 똑똑하게 사용하기. 예전에 우리가 자바에서 사용하던 방법 SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this); SharedPreferences.Editor editor = preferences.edit(); editor.putString("key","value"); editor.apply(); 코틀린으로 사용하면? private val pref = PreferenceManager.getDefaultSharedPreferences(context) @Suppress("IMPLICIT_CAST_TO_ANY") fun get(key: String, defaultValue: T): T { return when (defaultValue).. 2019. 8. 29.
mysql 원격접속 허용하기 원격접속 허용 명령어 mysql에 접속한다.grant all privileges on *.* to '계정명'@'%' identified by '비밀번호'; flush privileges; my.cnf 에서 다음을 수정한다.bind-address = 0.0.0.0 2017. 8. 30.