データベースの使い方(簡易) - ShopOne/Shitforces GitHub Wiki

データベースの中身を見たい場合や、直接の操作をしたい場合もあると思いますので、簡単に書きます。 postgresqlのdbへのログインについては、環境導入した時の資料をご覧ください。 Wikiの名前と同じ様にdbを作っていればpsql dbとターミナルに打つとアクセスできると思います。(方法によって異なります)

テーブル一覧

\dt; と打つとテーブル一覧が見れます。

カラム定義

accountInfo のカラム定義であれば、\d accountInfo; で見ることが出来ます。 Typeは入るデータの型、Nullableはその要素が合ってもなくても良いか、Defaultは何も入れなかった時に自動的に入る値です。

中身を見る

accountInfo の中全てを見たければselect * from accountInfo;です。 条件を絞る、例えばADMINのみであればselect * from accountInfo where permission = 'ADMINISTER'; さらに参加回数をが3回以上であればselect * from accountInfo where permission = 'ADMINISTER' and partNum >= 3;です。

中身の追加

conetstInfoにコンテストを追加するなら次のようになります。

INSERT INTO contestInfo(id, name, statement, startTime, endTime, contestType, ratedBound, penalty)
VALUES('kbc001', 'クソなぞなぞBeginnerContest001', 'くそなぞなぞコンテスト', '2021-4-1 21:00:00', '2020-4-1 21:30:00', 'ICPC', 0, 300);

中身の削除

accountInfoからshop_oneを消すなら次の様に書きます delete from accountInfo where name = 'shop_one';

中身の更新

accountInfoからshop_oneのratingとinnerRatingを0にする場合は次の様に書きます。 update accountInfo set rating = 0, innerRating = 0 where name = 'shop_one';