数据库就是一种特殊的文件,其中存储着需要的数据: Relational Database Management System 所谓的关系型数据库RDBMS,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据 查看最全数据库排行榜:https://db-engines.com/en/ranking Structured Query Language SQL是结构化查询语言,是一种用来操作RDBMS的数据库语言,当前关系型数据库都支持使用SQL语言进行操作,也就是说可以通过 SQL 操作 oracle,sql server,mysql,sqlite 等等所有的关系型的数据库 数据库的主要产品: 3.TPL:事务处理语言,对事务进行处理,包括begin transaction、commit、rollback MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,后来被Sun公司收购,Sun公司后来又被Oracle公司收购,目前属于Oracle旗下产品 MYSQL数据库的特点: 3.为多种编程语言提供了API,如C、C++、Python、Java、Perl、PHP、Eiffel、Ruby等 数据库操作 数据表操作 增删改查数据库基本介绍
1.数据库
1.数据行(记录)
2.数据表(数据行的集合)
3.数据列(字段)
4.数据库(数据表的集合)2.RDBMS
1.oracle:在以前的大型项目中使用,比如,银行,电信等项目
2.mysql:web时代使用最广泛的关系型数据库
3.sql server:在微软的项目中使用
4.sqlite:轻量级数据库,主要应用在移动平台3.SQL
1.DQL:数据查询语言,用于对数据进行查询,如select
2.DML:数据操作语言,对数据进行增加、修改、删除,如insert、udpate、delete
4.DCL:数据控制语言,进行授权与权限回收,如grant、revoke
5.DDL:数据定义语言,进行数据库、表的管理等,如create、drop
6.CCL:指针控制语言,通过控制指针完成表的操作,如declare cursor4.MYSQL
1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性
2.支持多种操作系统,如Linux、Windows、AIX、FreeBSD、HP-UX、MacOS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris等
4.支持多线程,充分利用CPU资源
5.优化的SQL查询算法,有效地提高查询速度
6.提供多语言支持,常见的编码如GB2312、BIG5、UTF8
7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径
8.提供用于管理、检查、优化数据库操作的管理工具
9.大型的数据库。可以处理拥有上千万条记录的大型数据库
10.支持多种存储引擎
11.MySQL 软件采用了双授权政策,它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库
12.MySQL使用标准的SQL数据语言形式
13.Mysql是可以定制的,采用了GPL协议,你可以修改源码来开发自己的Mysql系统
14.在线DDL更改功能
15.复制全局事务标识
16.复制无崩溃从机
17.复制多线程从机MYSQL查询
1.查询
--连接数据库 mysql -uroot -p mysql -uroot -pmysql --退出数据库 exit/quit/Ctrl+d --显示数据库版本 select version(); --显示时间 select now(); --查看所有的数据库 show databases;
--创建数据库 create database python04; create database python04new charset=utf8; --查看创建数据库的语句 show create database python04;
所以通常使用 create database python04new charset=utf8; 命令 --删除数据库 drop database python04; drop database python04new; --查看当前使用的数据库 select database(); --使用数据库 use python01;
--使用数据库 use python03; --查看当前数据库中所有的表 show tables;
– 创建表
– auto_increment 表示自动增长
– not null 表示不能为空
– primary key 表示主键
– default 默认值
– create table 数据表名字 (字段 类型 约束[, 字段 类型 约束]);
– 创建classes表 (id, name) -- 创建一个名为 python03 的数据库 create database python03 charset=utf8; --查看当前数据库中所有的表 show databases; -- 数据库创建好了之后 我们得使用数据库 use python03;
-- 创建数据表 create table student(id int, name varchar(30)); create table classes(id int primary key not null auto_increment, name varchar(30)); -- 下面是最简单的数据表的创建
desc student; desc classes;
--练习 --创建student表(id, name, age, height, weight, gender, class_id) create table student2( id int unsigned not null auto_increment primary key, name varchar(30), age tinyint unsigned default 0, height decimal(5, 2), weight decimal(7, 2), gender enum("男", "女", "中性", "保密") default "保密", class_id int unsigned );
-- 给表中插入数据 insert into student2 values (0, "小艾", 25, 1.72, 64, "男", 1); -- 查看插入的数据 select * from student2;
修改表-添加字段 -- alter table 表明 add 列名 类型 alter table student2 add birthday datetime;
--修改表-修改字段:不重命名阪 alter table student2 modify birthday date;
--修改表-修改字段:重命名版 alter table student2 change birthday birth date default "2000-01-01";
-修改表-删除字段 --alter table 表名 drop 列名 alter table student2 drop weight;
--删除表 -- drop database 数据库名; -- drop table 数据表; drop table student2;
-- 增加 -- 全裂插入 -- insert [into] 表明 values(...) -- 主键字段 可以用 0 null default 来占位 -- 向classes 表中插入一个班级 insert into classes values(0, "大神班");
-- 向student 表中插入一个学生信息 insert into student2 values(0, "xiaoai", "1999-11-11", 19, 1.88, 2); insert into student2 values(null, "xiaoai", "1999-11-11", 19, 1.88, 2); insert into student2 values(default, "xiaoai", "1999-11-11", 19, 1.88, 2); -- 失败 insert into student2 values(default, "xiaoai", "中性","1999-11-11", 19, 1.88, 2); -- 枚举中 的 小标从1开始 1---"男" 2--->"女" insert into student2 values(default, "小力", 20, 1, 1, "1999-11-11"); -- 部分插入 -- insert into 表名(列1,...) values(值1,...) insert into student2 (name, gender) values ("小巧", 2); insert into student2 (name, gender) values ("小巧", 2), ("貂蝉", 3), ("吕布", 4);
-- 修改 -- update 表名 set 列1=值1, 列2=值2, ... where 条件; update student2 set gender=1; --全部修改 update student2 set gender=1 where name="小巧"; --只要name是小巧的全部修改 update student2 set gender=1 where id=3; --只要id为3的 进行修改 update student2 set age=22, gender=1 where id=3; --只要id为3 进行修改
-- 查询基本使用 -- 查询所有列 -- select * from 表名; select * from student2; -- 条件查询 select * feom student2 where name="小巧"; -- 查询name为小巧的所有信息 select * feom student2 where id>3; -- 查询用户id小于3的所有用户信息 -- 查询指定列 --select 列1,列2 .....from 表名; select name, id from student2; -- 可以使用as为列或表指定别名 -- select 字段[as 别名], 字段[as 别名] from 数据表 where ...; select name as 姓名, gender as 性别 from student2; -- 字段的序列 select gender as 性别, name as 姓名 from student2; select id as 序列号, gender as 性别, name as 姓名 from student2;
-- 删除 -- 物理删除 -- delete from 表名 where 条件 delete from student2; -- 整个数据表里的所有数据全部删除 delete from student2 where name ="小巧"; -- 逻辑删除 -- 用一个字段来表示 这条信息是否已经不能在使用了 -- 给 student2 表添加一个 is_delete 字段 bit 类型 alter table student2 add is_delete bit default 0; update student2 set is_delete-1 where id= 0;
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算