python中SQL语言与mysql

#mysql-基本使用
SQL也是一种编程语言
SQL注释 –

数据库是一种特殊文件,存在硬盘下
列,字段;行,记录;主键,能唯一标记某个字段就是主键
mysql关系型数据库

1.RDBMS,Mysql介绍

关系型数据库管理系统,一种程序的系统,通过表表示关系型,借助集合代数等处理数据库中的数据
主要产品:oracle,mysql,SQLite等
C/S 架构

RDBMS-Client通过SQL连接RDBMS-Server服务端创建修改数据库文件

SQL:结构化查询语言,支持多种数据库,不区分大小写

常用:数据的增删改差 DQL DML

2.mysql安装

安装server sudo apt-get install mysql-server
启动:sudo service mysql start
关闭: stop
重启 restart

配置

/ect/mysql/mysql.cnf

3.创建表

主键,钥匙?,唯一标记每一个记录

4.数据类型,约束

类型,约束是建一个新表需要考虑的
规则是够用就行,尽量使用取值范围小的
varchar 变长度的字符串,但是不允许超过;
char固定长度字符串
图片,视频等存在服务器里,数据库保存他的路径
没有布尔类型! 我们通常用bit表示布尔
支持的主要分为三类:
数值,字符串,时间
https://blog.csdn.net/anxpp/article/details/51284106
数值:整数,定点数

DECIMAL和NUMERIC类型在MySQL中视为相同的类型。它们用于保存必须为确切精度的值
:DECIMAL(M,D),其中M表示十进制数字总的个数,D表示小数点后面数字的位数,上例中的取值范围为-999.99~999.99;
MySql中的浮点类型有float,double和real。他们定义方式为:FLOAT(M,D) 、 REAL(M,D) 、 DOUBLE PRECISION(M,D);
BIT数据类型可用来保存位字段值。BIT(M)类型允许存储M位值。M范围为1~64,默认为1。

整数:int,bit
小数:decimal
字符串:varchar,char
日期时间: date, time, datetime
枚举类型(enum) 枚举中的下标从一开始

约束:
外键,存储的是别的表的主键叫做外键

主键primary key:物理上存储的顺序
非空not null:此字段不允许填写空值
惟一unique:此字段的值不允许重复
默认default:当不填写此值时会使用默认值,如果填写时以填写为准
外键foreign key:对关系字段进行约束,当为关系字段填写值时,会到关联的表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并抛出异常

5.命令操作数据库

登录:mysql -uroot -p[密码]

退出:exit/quit/ctrl+d

查看所有数据库:show databases;

显示当前数据库时间:select now(); #数据库支持函数

显示版本:select version();

创建数据库:create database 名字;
create database 名字 charset=utf8;

查看创建数据库的语句: show create database 名字;

删除数据库:drop database db_name;(要是删除不好使,加上``,说明他是一个整体)

使用数据库:use db_name

查看当前使用数据库:select database();

6.数据表的操作

查看所有的表:show tables;

创建表: creata table tb_name(字段 类型 约束[, 字段 类型 约束]*);可以拆成多行;
id int unsigned

查看表:desc 数据表名字;

插入数据:insert into table_name values(按照顺序插入数据)

修改表结构:增删改查

alter table table_name add ——————>增

修改:modify修改约束类型
alter table table_name modify
重命名名字和约束:change

删字段:drop —> alter table tb_name drop 列名

删表:drop table 表名

查看创建表语句: show create table 表名

7.数据表数据的操作

增删查改curd

增:

全部插入:insert into 表名 value();
如果insert value没有指明,必须全部插入,否则报错;

部分插入:insert into 表名(字段名,)value(值,);
多行插入 insert into 表名(字段,)value(值,),(值,);

更新,修改

update 表名 set 字段=值, 字段= , where 字段=(匹配符合的);

查询

select * from 表名;
select * from 表名 where 字段=(符合的条件);
select 想看的的字段[as xxx] 表名 where 字段=(符合的条件);

删除

delete from 表名 ; 清空表
delete from 表名 where 字段=(xxx);

假的删除 逻辑删除 加一个字段is_delete bit default 0;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值