Python学习笔记020——数据库基本操作

时间:2023-03-09 17:53:13
Python学习笔记020——数据库基本操作

本数据库的操作是Linux虚拟机平台下进行的

1 启动和链接MySQL服务

1.1 服务端

(1)查看服务状态

sudo /etc/init.d/mysql stauts

(2)启动服务端

sudo /etc/init.d/mysql start

(3)停止服务端

sudo /etc/init.d/mysql stop

(4)重启服务

sudo /etc/init.d/mysql restart/reload

1.2 客户端连接服务端

命令格式

mysql -h主机名 -u用户 -p密码

如果是本地服务器为localhost,则

mysql -hlocalhost -uroot -p123456

一般而言,当链接本地服务器时,可以省略 -h 选项

服务器的数据库密码为tarena

mysql -uroot -p123456

注意:

数据库密码为tarena

对于 -p密码 而言 p 后面如果有空格,则系统会将空格一并作为密码读入。

2 SQL命令的使用规则

(1)每条命令必须以逗号;结尾

(2)SQL命令不区分大小写

(3)使用 \c 终止命令的执行,\c 必须写在语句结束的逗号前面,

3 SQL数据库基本命令——库的管理

3.1 库的命名规则

(1)可以使用字母、_和数字,但不能使用纯数字

(2)库名不能使用特殊字符或MySQL的关键字

(3)库名区分大小写

(3)库名具有唯一性

3.2 库的基本操作

(1)查看库:

show databases

(2)创建库:

create database 库名 default charset=utf8

(3)查看创建库的语句(含字符集):

show create database 库名

Python学习笔记020——数据库基本操作

(4)查看当前所在库:

select database()

Python学习笔记020——数据库基本操作

(5)切换库:

use 库名

(6)查看库中已有的表

show tables

Python学习笔记020——数据库基本操作

(7)删除库

drop database 库名

3 SQL数据库基本命令——表的管理

3.1 表的命名规则

表的命名规则同库的命名规则一样

3.2 表的基本操作

(1)创建表
 create table 表名( 字段名 数据类型 字段名 数据类型 ... ... )default charset=utf8

备注:创建表时可以不指定字符集,但系统会自动分配 DEFAULT CHARSET=latin1  字符集,在该字符集不识别汉字。

(2)查看创建表的语句

show create table 表名

备注:该查询条件可以显示数据表引擎、数据表字符集( ENGINE= DEFAULT CHARSET=latin1  )。

(3)查看表结构

desc 表名

Python学习笔记020——数据库基本操作

(4)删除表

drop table 表名

5 SQL数据库基本命令——表记录的管理

5.1 表记录的命名规则

(1)在表中插入记录

insert into 表名[(字段名1 [, 字段名2, ...)] values (值1 [,值2, ...])

如果插入值value与表中字段数量相等,则字段名列表(字段名1 [, 字段名2, ...)可以省略,如果不想等则不可省略。

当省略时需对应匹配,否则value值在匹配时与预期不一致。

(2)查看表记录

select * from 表名

此时显示表中所有字段名对应的value值

当仅想检索表中一个或几个字段名对应的value值时,则

select 字段1,字段2,... from 表名

即可显示字段1,字段2...对应的值value

(3)删除表记录

delete from 表名 where 条件

注意:一定要在 delete 语句后面添加where条件语句,如果没有where语句将会将所有表记录全部删除。

(4)更新表记录

update 表名 set 字段名=值1,... where 条件

注意:update语句如果无where语句则将该表中所有该字段的值更改。

6 SQL数据库基本命令——表字段的操作

6.1 表字段的命名规则

参考:数据库表字段命名规范 中的第三章节

6.2 表字段的操作

表字段的操作一般为: alter table 表名 执行动作

(1)修改表名

alter table 表名 rename 新表名

(2)修改字段名

alter table 表名 change 旧名 新名 数据类型

(3)向表中添加一个字段

alter table 表名 add 字段名 数据类型;    #在表尾追加字段
alter table 表名 add 字段名 数据类型 first;    #在表首行追加字段
alter table 表名 add 字段名 数据类型 after 字段名;   #在表指定位置处追加字段

(4)删除字段

alter table 表名 drop 字段名

(5)修改字段的数据类型

alter table 表名 modify 字段名 数据类型

6 客户端把数据存储到数据库服务器上的过程

(1)连接到数据库服务器:mysql -h主机名localhost -u用户名root -p密码123456

(2)选择库:use 库名

(3)创建表/修改表:create/update

(4)断开与数据库服务器的链接:exit、quit、\q

备注:

(1)所有的数据都是以文件的形式存放在数据库目录下

(2)在linux目录下的数据库文件存放目录:/var/lib/mysql

在数据库中 \G 会将表结构的显示风格。将来源列显示

mysql> desc c_table;
+-------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | char(20) | YES | | NULL | |
+-------+----------+------+-----+---------+-------+
2 rows in set (0.06 sec)

mysql> desc c_table\G;
*************************** 1. row ***************************
Field: id
Type: int(11)
Null: YES
Key:
Default: NULL
Extra:
*************************** 2. row ***************************
Field: name
Type: char(20)
Null: YES
Key:
Default: NULL
Extra:
2 rows in set (0.10 sec)

ERROR:
No query specified

Python学习笔记020——数据库基本操作


Mysql数据库、表、字段常用操作

MySQL学习总结(二)数据库以及表的基本操作

以上两个链接非常好!