热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MYSQL的学习笔记

数据库的基本操作   1.创建数据库:Cretedatabase数据库名;在创建数据库表之前,使用use数据库名m;之后创建数据库。   2.创建数据库表:createtable表名(字段名数据类型约束条件); 3.查看数据表结构:desc表名;和showcreatetable表名\g  4.约束条件;主键约束 primarykey  ...
数据库的基本操作
1.创建数据库:Crete database 数据库名;
在创建数据库表之前,使用use 数据库名m;之后创建数据库。
2.创建数据库表:create table 表名(字段名 数据类型 约束条件);
3.查看数据表结构 :desc 表名; 和show create table 表名 \g

4.约束条件;主键约束 primary key
非空约束 not null
唯一约束 unique
默认约束 default
设置属性值的自增 auto_increment
5.修改数据表;修改表名 alter table 表名 rename 新表名
修改字段名 alter table 表名 modify 字段名 数据类型
修改数据类型 alter table 表名 change 旧字段名 新字段名 数据类型
添加字段 alter table 表名 add 字段名 数据类型 约束条件 firsT/after 字段名
删除字段 alter table 表名 drop 字段名
更改表的存储引擎 alter table 表名 engine=存储引擎
总结:对表结构的修改:alter table 表名 modify 等等;
数据类型和运算符
数据类型:字符串型,数值型,日期时间型
1.整型;tinyint smallint mediumint int bigint.
2.浮点型;float DOUBLE decimal.
3.日期时间型;year time date datetime timestamp.
4.文本字符串;char varchar tinytxet text mediumtext longtext enum set .
mysql函数
abs() sqrt() ceil() ceiling() floor() rand() round()
查询数据和插入更新删除
创建数据库表:create database 数据库名;
打开数据库:use 数据库名;
新建数据表:create 表名 (字段名 数据类型 );
{
数据类型: 字符串型,数值型,日期时间型
1.整型;tinyint smallint mediumint int bigint.
2.浮点型;float DOUBLE decimal.
3.日期时间型;year time date datetime timestamp.
4.文本字符串;char varchar tinytxet text mediumtext longtext enum set .
约束条件 :主键 primary key
唯一主键 unique
非空约束 not null
默认约束 default 默认值
外键 constraint 外键名 foreign key (字段名) references 主键名 主键列;
属性值自增 auto_increment
查看数据表结构:desc 表名
show create table 表名
修改数据表 :修改表名 alter table 表名 rename 新表名
修改字段名 alter table 表名 change 字段名 新字段名 数据类型
修改数据类型 alter table 表名 modify 字段名 数据类型
添加字段 alter table 表名 add 字段名 数据类型(first /after )
删除字段 alter table 表名 drop 字段名
更改表的存储引擎 alter table 表名 engine =存储引擎 删除外键约束 alter table 表名 drop foreign key 外键约束名
基本查询数据 select 字段名 from 表名 (where
gropy by having with rollup
order by
limit
distinct
连接查询 内连接 select 字段名 from 表名1 inner join 表名2 on 表名1.字段=表名2.字段;
左连接 select 字段名 from 表名1 left outer join 表名2 on 表名1.字段=表名2.字段;
右连接 select 字段名 from 表名1 right outer join 表名2 on 表名1.字段=表名2.字段;
* 左连接就是所要查询的字段结果包含所有左表的字段
子查询(嵌套查询) ( any(some)
all
exists (exists 和条件表达式一起使用,如果exists后面的查询语句返回至少一条记录,
则exists结果为ture 此时外层查询语句将进行查询,not exists 与之相反。)
in )
合并查询结果 select 字段名 from 表名 查询条件 union(all)select 字段名 from 表名 查询条件
注意:两个表对应的列数和字段名必须相等。不使用all,结果删除重复的记录。
]
}
插入数据表:insert into 表名(字段名)values (所要插入的数据 );
更新数据:updata 表名 set 字段=值 条件;
删除数据:delete from 表名 条件;

索引
优点:创建唯一索引,保证数据库表的每一行数据的唯一性,大大加快查询速度,在事项数据的参照完整性方面,可以加速表和表之间的连接
在使用分组和排序字句进行数据查询,也可以减少查询中分组和排序的时间。
普通索引 index(字段名):最基本的索引类型,没有唯一性的限制,只是为了加快对数据的访问速度
唯一索引 unique idenx 索引名(字段)索引值必须是唯一的,但允许有空值,减少查询缩影操作的执行时间,尤其是对庞大的数据表。
单列索引 一个表可以有多个索引
组合索引 多个字段上创建一个索引,查询时遵循最左前缀,只有查询符合这样的最左前缀时才能使用索引
全文索引 fulltext 可以用于全文搜索,只用MYISAM存储引擎支持fulltext 索引 并且只为char varchar text
空间索引 spatial 必须在MYISAM类型的表中创建,且空间类型的字段必须为空,

在已经存在的表上创建索引
alter table 表名 add index 索引名 (字段名(索引长度))
create index 索引名 on 表名(字段名);

alter table 表名 drop index 索引名;

drop index 索引名 on 表名

创建存储过程和函数
create procedure 存储过程的名称()begin 存储过程体 end;
每次调用都会执行存储过程体。

创建存储函数
create 存储函数名称 (参数列表)
returns 返回值类型
return (函数体);

变量的使用
定义变量:declare 变量名 变量类型 default 默认值;
为变量赋值:set 变量名=值;

光标的使用
声明光标:declare 名称 cursor for for 查询语句;
打开光标:open 名称;
使用光标:fetch 名称 into 将光标中查询出的结果存入改参数中;
关闭光标;close 名称;

流程控制的使用(case loop leave iterate repeat while )

调用存储过程:call 名称(参数);
调用存储函数:select名称(参数);


视图
视图的含义:视图是虚拟表,是从数据库中一个或多个表中导出的表,
create [or replace] view 视图名 as select语句
create view 视图名(自己所定义的列名) as select 语句

desc 视图名;
show create view 视图名 \G
show table status like '视图名'\G

修改视图和创建视图是一样的。
alter view 视图名 as select语句

updata 视图名 set 字段=值;

删除视图 drop view if exists 视图名;


MYSQL触发器
和存储过程一样,都是嵌入到mysql的一段程序,触发器是由时间来触发某个操作,这些事件包括insert update delete
创建触发器

创建只有一个执行语句的触发器
create trigger 触发器名称 标识触发时机(before/after )标识触发事件(insert update delete)on标识触发器的表名 for each 触发器执行语句;

本文讲解了mysql的相关内容,更多内容请关注 第一PHP社区 。


推荐阅读
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了《中秋夜作》的翻译及原文赏析,以及诗人当代钱钟书的背景和特点。通过对诗歌的解读,揭示了其中蕴含的情感和意境。 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 本文介绍了在Python3中如何使用选择文件对话框的格式打开和保存图片的方法。通过使用tkinter库中的filedialog模块的asksaveasfilename和askopenfilename函数,可以方便地选择要打开或保存的图片文件,并进行相关操作。具体的代码示例和操作步骤也被提供。 ... [详细]
  • 本文描述了作者第一次参加比赛的经历和感受。作者是小学六年级时参加比赛的唯一选手,感到有些紧张。在比赛期间,作者与学长学姐一起用餐,在比赛题目中遇到了一些困难,但最终成功解决。作者还尝试了一款游戏,在回程的路上感到晕车。最终,作者以110分的成绩取得了省一会的资格,并坚定了继续学习的决心。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
author-avatar
吴款爷
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有