diadia

興味があることをやってみる。自分のメモを残しておきます。

SQLite3で複合キーを使ってみる

参考:https://ts0818.hatenablog.com/entry/2017/02/04/162513
http://isakado.blog106.fc2.com/blog-entry-17.html

使用例

# 複合主キーを設定したテーブルを作成    
conn = sqlite3.connect("practice.sqlite")
cur  = conn.cursor()

create_table_sql ="""
CREATE TABLE Registered (USERID TEXT, DATE TEXT, FILE_NAME TEXT, PRIMARY KEY(USERID, DATE))
"""

cur.execute(create_table_sql)

どうやらクリエイトテーブルしたあとにPRIMARY KEYを記述してその引数に複合キーとしたいカラム名を渡せば良いようだ。

この記法はsqliteだけでなくpostgresqlでも同じ。
http://www.ksknet.net/postgresql/post_179.html
https://www.dbonline.jp/postgresql/table/index6.html