データベーステーブルを作成します。1.
私たちは、SQLコマンドに精通しているの前に顔SQLiteデータベースを使用することができます。
>>> create_table = "create table books (title,author,language)"
>>> cur.execute(create_table)
<sqlite3.Cursor object at 0x104f296c0>
これは、ブック内のデータベースlite.dbにテーブルを設定します。データはこのテーブルに追加することができます。
>>> cur.execute('insert into books values("python basic","rocky","python")')
<sqlite3.Cursor object at 0x104f296c0>
データを保存することができることを確実にするために、だけでなく、次の操作:
>>> conn.commit()
>>> cur.close()
>>> conn.close()
上記、データベースがすでにちょうどテーブルの本を作成しており、表には、すでに記録を持っています。
2.クエリ
レッツ・チェック何を保存した後:
>>> conn = sqlite3.connect('lite.db')
>>> cur = conn.cursor()
>>> cur.execute('select * from books')
<sqlite3.Cursor object at 0x104f297a0>
>>> cur.fetchall()[('python basic', 'rocky', 'python')]
3.一括挿入
我々は本が私たちに他の操作を行うために、いくつかのより多くのコンテンツを追加し、テーブルに来て:
>>> books = [("first book","first","c"),("second book","second","c++"),("third book","third","java")]
今回我々は、一括挿入に来ます:
>>> cur.executemany('insert into books values (?,?,?)',books)
<sqlite3.Cursor object at 0x104f297a0>
>>> conn.commit()
次は、クエリ結果をループでそれを印刷します:
>>> rows = cur.execute('select * from books')
>>> for row in rows:
... print(row)
... ('python basic', 'rocky', 'python')('first book', 'first', 'c')('second book', 'second', 'c++')('third book', 'third', 'java')
4.アップデート
我々は先に述べたように、cur.executeに()は、データベースを操作するためのSQL文を書くことができます。
>>> cur.execute("update books set title='physics' where author='first'")
<sqlite3.Cursor object at 0x104f297a0>
>>> conn.commit()
その後、我々はを見て問い合わせの条件に従います。
>>> cur.execute("select * from books where author='first'")
<sqlite3.Cursor object at 0x104f297a0>
>>> cur.fetchall()[('physics', 'first', 'c')]
5. [削除]
データベースの動作もアクションを削除する必要があります。
>>> cur.execute("select * from books")
<sqlite3.Cursor object at 0x104f297a0>
>>> cur.fetchall()
[('python basic', 'rocky', 'python'), ('physics', 'first', 'c'), ('third book', 'third', 'java')]
最後に、データベースの操作が完了した後に、人々は「ドアを閉め」を覚えておく必要があることを忘れないでください:
>>> cur.close()
>>> conn.close()
conn.execute('''CREATE TABLE MT
(ID INT PRIMARY KEY NOT NULL,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL);''')
除此之外,select语句还可以搭配一些SQLite功能函数使用,常用的有:
count(*) 统计表内行数(记录数) sqlite> select count(*) from stu;
max(column) 计算该列的最大值 columen 是一列的名字
min(column) 计算该列的最小值
avg(column) 计算该列的平均值
sum(column) 计算该列的总和
upper(column) 输出选中的列的所有字符串的全大写字母
lower(column) 输出选中的列的所有字符串的全小写字母
length(column) 计算该列的所有字符串的长度
将这些函数放在select语句内可以完成一些计算工作。例如输入命令
select sum(score) from student;
可以求出表student内所有学生的成绩总和。
8、模糊查询——like子句
除了使用where子句设定筛选条件外,我们还可以使用like子句模糊匹配表内的记录。like语句搭配两个通配符一起使用:
百分号% 表示零个、一个或多个数字或字符
下划线_ 表示一个数字或字符
如果某条记录内的某一列能与like后的条件匹配,则该记录被选定。例如:
select * from student where name like %l%;//从表student中选取名字内带字母l的所有记录
---------------------
原文:https://blog.csdn.net/nan_lei/article/details/84344003