当前位置: 首页 > news >正文

数据库的操作

【一】库的增删改查
【0】导入数据文件
source D:\bjpowernode.sql
【1】创建数据库
语法:
create database [if not exists] 数据库名 [character set 编码字符集];
create databases db1;
# 设置库的默认编码
create databases db1 charset='gbk';
【2】查看数据库
show databases;  -- 查看所有数据库
show databases like '%test%'; -- 查看名字中包含test的数据库
show create database 数据库名; -- 查看数据库的建库sql语句
【3】修改数据库
 名字:rename database 旧名字 to 新名字;这个语法在 mysql-5.1.7 中被添加进来,到了mysql-5.1.23又去掉了,官方不推荐,会有丢失数据的危险!
字符编码:
alter database db2 charset='utf8';
【4】删库
drop database db2;
【5】查看当前库下面的表
(1)查看所有的表
show tables;
(2)查看指定的表
show create table 表名;

【二】表的增删改查
【1】查看当前所在库的名字
select database();  --  查看当前使用的数据库
【2】切换到指定库
use 数据库名;        -- 切换数据库
【3】创建表--》前提是已经切换到指定库了
create table student(id int auto_increment,   -- 字段名:id,数据类型:int整型,auto_increment整数自动增长+1name varchar(10),   -- 字段名:name, 数据类型:varchar字符串(长度限制最多10个字符)sex int default 1,  -- 字段名:sex,数据类型:int整型,默认值(default):1 相当于True classes int,         -- 字段名:classes, 数据类型:int整型,age int,             -- 字段名:age,数据类型:int整数,description text,  -- 字段名:description,数据类型:text文本primary key (id)  -- 设置主键(id) 每个表必须都有主键,用以区分不同行的数据
);
【3】查看当前表的详细信息
describe 表名;
或
desc t1;
【4】查看建表语句
show create table 表名;
【5】修改表
(1)修改表的字段类型
alter table 表名 modify 字段名 字段类型(宽度);
或
alter table 表名 change 旧字段名 新字段名 新数据类型;
(2)修改表名字重命名
alter table 原表名 rename 新表名;
(3)添加字段
默认是尾部追加字段
alter table 表名 add 字段名 字段类型;
指定追加位置
alter table 表名 add 字段名 字段类型 after 原字段名;
指定头部添加字段
alter table 表名 add 字段名 字段类型 first;
(4)删除字段
alter table 表名 drop 字段名;
(5)删除表
drop table 表名;
(6)以绝对路径的形式操作不同的库
create table db2.t1(id int);
(7)重置表信息
TRUNCATE table 表名;
【三】数据的增删改查
【1】数据的增加
列名与值一一对应
单条记录:
insert into user(name, age, selary) values('lisi', 18, 100);
多条记录:
insert into student values(002,'lzj',22,10),(003,'lll',22,10);
【2】数据的查看
select * from 表名;
【3】数据的更改
当id=1时,把名字改为xx
update 表名 set name='xx' where 条件;
update t1 set name='mengmeng' where id > 1;

【4】删除数据
delete from 表名 where 条件;
# 删除指定字段的数据
delete from t1 where id > 1;
# 删除指定字段的数据
delete from t1 where name='dream';
# 清空当前表的所有数据
delete from t1;
【四】MySQL支持哪些运算符?
运算符说明
=等于
<>或!=不等于
<小于
<=小于等于
>大于
>=大于等于
between ... and ...两个值之间,等同于 >= and <=
is null为null (is not null 不为空)
and并且
or或者
in包含,相当于多个 or (not in 不在这个范围内)
notnot 可以取非,主要用在is或in中
likelike称为模糊匹配,支持 % 或下划线匹配 (% 匹配任意个字符)
  • 补充

    • and的优先级高于or。

    • between...and...当数值时为闭区间,且and前面的数值必须比后面大。若为字符,区间为前闭后开。

【五】处理函数
函数名解释用法
lower转换小写lower(要转换字段名称)
upper转换大写upper(要转换字段名称)
substr取子串substr(被截取字段名称,起下标,截取长度)
length取长度 用法:length(字段名称)
trim去除空格trim(字符串)
str_to_date将字符串转换成日期str_to_date("日期字符串","日期格式")
date_format格式化日期date_format(日期类型数据,"日期格式")
format设置千分位
round四舍五入round(要四舍五入的数字,四舍五入到哪一位),默认保留整数位
rand生成 0~1 随机数rand()
ifull将 null 转换成一个具体的值ifull(字段名称,将要替换的值)
  • 数据处理函数是该数据本身特有的,有些函数可能在其它数据库不起作用;

http://www.lryc.cn/news/394911.html

相关文章:

  • 常见的认证方式
  • DolphinScheduler部署安装or基础介绍(一)
  • Failed building wheel for pyaudio Running setup.py clean for pyaudio
  • 【ARMv8/v9 GIC- 700 系列 1 -- Programmers model for GIC-700】
  • exel带单位求和,统计元素个数
  • JavaScript里方括号[]的使用
  • 俯卧撑计数器(Python)
  • UVA12342 Tax Calculator 题解
  • WebKit中Websockets的全面支持:实现高效实时通信
  • 微信小程序的智慧物流平台-计算机毕业设计源码49796
  • 旅游 | 西岳华山
  • 如何优化Java中的内存占用?
  • 2024这三家上海闵行装修公司,值得一看
  • K8S学习教程(三):在PetaExpress KubeSphere 容器部署 Wiki 系统 wiki.js 并启用中文全文检索
  • 服务器该如何抵御CC攻击
  • 关于centos7自带的nginx1.20.1开启https后,XP系统的IE6和IE8无法显示网页的问题
  • Zotero软件翻译插件Translate for Zotero的API接入方法--百度垂直领域翻译
  • python实现接口自动化
  • 如何提问 如何回答
  • 计算机图形学入门26:高级光线传播
  • STM32蓝牙HID实战:打造低功耗、高性能的客制化键盘
  • C++ STL容器:序列式容器-队queue,deque
  • 简谈设计模式之单例模式
  • 在Spring Boot中实现多线程任务调度
  • dify/api/models/account.py文件中的数据表
  • SQLAlchemy迁移数据库
  • Django文档简化版——Django快速入门——创建一个基本的投票应用程序
  • 安全防御第三天(笔记持续更新)
  • 【12321骚扰电话举报受理中心-短信验证安全分析报告】
  • 杂项——循迹模块调节方法