假設我有一個表,其中有一列名為 name,每一行都有一個觀察值。
NAME
('John Smith')
('Paul Smith')
('Jake Smith')
我將如何修改表,使其包含每行的索引以獲得如下所示的內容。我只需要使用標準的 Python 包。
NAME INDEX
('John Smith') 1
('Paul Smith') 2
('Jake Smith') 3
con = sqlite3.connect('example.db')
cur = con.cursor()
table= "CREATE TABLE names(name TEXT)"
cur.execute(table)
INSERT INTO names(name)
VALUES ('John Smith');
VALUES ('Paul Smith');
VALUES ('Jake Smith');
uj5u.com熱心網友回復:
SQLite 創建一個名為“ROWID”的隱藏列,它會自動執行此操作。
sqlite> create table names(id TEXT);
sqlite> insert into names values ('John Smith'),('Paul Smith'),('Jake Smith');
sqlite> select rowid, id from names;
1|John Smith
2|Paul Smith
3|Jake Smith
sqlite> ALTER TABLE names ADD COLUMN names_index INTEGER;
sqlite> UPDATE names SET names_index=rowid;
sqlite> .mode box
sqlite> SELECT * FROM names;
┌────────────┬─────────────┐
│ id │ names_index │
├────────────┼─────────────┤
│ John Smith │ 1 │
│ Paul Smith │ 2 │
│ Jake Smith │ 3 │
└────────────┴─────────────┘
sqlite>
如果您創建自己的列,即INTEGER PRIMARY KEY,它將用作 ROWID。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/420113.html
標籤:
