标签:exception core 用途 odi mysqld port auto passwd alt
MySQL常用操作命令行
1、数据库操作
#创建数据库
creat database 数据库名 charset=utf8;
#删除数据库
drop database 数据库名;
#切换数据库
use 数据库名
2、数据表命令
#查看所有表
show tables;
#创建表
creat table 表名(字段,类型,约束);
id int auto_increment premary key not null
#删除表
drop table 表名
#修改表
alter table 表名 add|change|drop 列名 类型 约束;
#查看表的结构
desc 表名
3、操作数据命令
#插入一行数据
insert into 表名() values();
#修改数据
updata 表名 set 字段名=值
#删除数据
delete from 表名
#逻辑删除:使用isDelete属性,修改其默认值代替物理删除
4、数据备份与恢复(需在根路径下操作)
备份:mysqldump –uroot –p 数据库名 > ~/Desktop/备份文件.sql;
按提示输入mysql的密码
恢复:mysql -uroot –p 数据库名 < ~/Desktop/备份文件.sql
根据提示输入mysql密码
5、数据查询
a. 查看/筛选表的内容
select 后面加 distinct 可以消除完全相同的行数据
select后面可以加列的信息
where后面加逐行筛选条件
select * from 表名 where 条件;
b. 模糊查询
使用关键字 like
%代表任意多个字符
_代表一个任意字符
select * from 表名 where 条件 like 条件表达式;
c. 范围查询
in: 在一个非连续的范围内
between 数字 and 数字 :在连续范围内
select * from 表名 where 条件 in(范围);
d. 空判断
null 与 ‘‘ 不同,null没有指向,‘‘指向空字符串
判空 is null
6、聚合
a. 计算总行数,count(*)
select count(*) from 表名;
b. 求最大最小值
select max(列名)/min(列名) from 表名 where 条件;
c. 求和与平均值
select sum(列名)/avg(列名) from 表名 where 条件;
7、分组
select 列1,列2,聚合... from 表名 group by 列1,列2...;
#分组筛选
where 对 表即原始数据 进行筛选
having 对 分组后的结果集 进行筛选
select 列1,列2,聚合... from 表名 group by 列1,列2... having 条件;
8、排序
#asc 表示升序排列,desc 表示降序排序
select * from 表名 where 条件 order by 列1 asc|desc,列2 asc|desc;
9、分页
a. 从strat 开始,获取count 条数据,从0开始计算
select * from 表名 limit start,count;
b. 求第n页的数据,每页显示m个
select * from 表名 where 条件 limit (n-1)*m,m
10、建立关系
#在当前表建立外键
foreign key(键名) references 目标表(目标表主键)
11、连接查询,查询项目涉及多张表时
#demo
select students.name,subject.title,scores.score
from scores
inner join students on scores.stuid=students.id
inner join subjects on scores.subid=subjects.id
12、视图
#为了对select语句进行封装,最终用途是查询
creat view 视图名 as select语句
13、事务
#当数据被更改时使用
begin; 在此语句后进行操作,新更改的数据将存储在内存中
rooback; 放弃所有begin后的操作,恢复之前的数据
conmmit; 确定begin之后的操作,对数据库中的数据进行修改
demo:MySQL数据库与Python交互
#在数据库中操作数据
# -*- coding:utf-8 -*-
from MySQLdb import *
class MysqlHelper():
def __init__(self,host,port,db,user,passwd,charset = utf8):
self.host = host
self.port = port
self.db = db
self.user = user
self.passwd = passwd
self.charset = charset
def open(self):
self.conn = connect(host=self.host,port=self.port,db=self.db,
user=self.user,passwd=self.passwd,charset=self.charset)
self.cursor = self.conn.cursor()
def close(self):
self.cursor.close()
self.conn.close()
def modify(self,sql,params):
try:
self.open()
self.cursor.excecute(sql,params)
self.conn.commit()
self.close()
except Exception as e:
print(e.message)
def search(self,sql,params):
try:
self.open()
self.cursor.excecute(sql,params)
result = self.cursor.fetchall()
self.close()
return result
except Exception as e:
print(e.message)
标签:exception core 用途 odi mysqld port auto passwd alt
原文地址:https://www.cnblogs.com/dalun101/p/9373745.html