Code前端首页关于Code前端联系我们

Mysql代码 学习如何使用Mysql编写代码

terry 2年前 (2023-09-30) 阅读数 47 #Mysql
文章标签 Mysql

本文内容列表:

  • 1、学习了mysql之后可以做什么?
  • 2、mysql基本语句详细教程
  • 3、MySQL有哪些推荐的教材?

学完mysql可以做什么

首先,不要被技能淹没。无论你以后从事什么技术领域,或多或少都会和数据库有交集。当你遇到问题时,你可以自己解决,这比等待别人处理要快得多。

学习MySQL的主要目的是能够拥有一技之长,能够从事相关工作,能够有不同的发展方向。比如最直接的方式就是从事数据库相关的工作。您可以作为 DBA 部署、管理、优化数据库,也可以专注于数据库开发和数据库设计。如果你数据库学得很好,甚至可以通过修改源码来实现你想要的功能。国内外很多MySQL专家都非常精通MySQL源代码。他们在源代码中添加了一些中间件来改进数据库,有些还制作了自己的分支版本。如今,大多数开发人员都需要具备数据库相关知识,而MySQL是现在开发中最常用的数据库之一。即使你不是技术领域,从事销售,在推广你的产品时也可以涉及到数据库相关知识。如果你知识渊博的话,你可以在向客户介绍MySQL时向用户很好地解释为什么他们选择MySQL而不是其他的。数据库。

当然如果是纯粹的爱好也没关系。有的人喜欢钓鱼,有的人喜欢玩游戏,而我们喜欢思考数据库,但别人却控制不了?

Peng手工制作,希望对你有帮助。

基本mysql语句详细教程

他们看网上的内容,他们都写同样的东西。同时,很多都写得不太好。下面是我总结的关于mysql的使用细节。也是我学习过程的一些记录。我希望它对你有用。这是有一定帮助的。存储过程之类的相关操作我还没有总结。下次我整理好后发给你。哈哈~~~~~~

MySql学习笔记

MySql概述:MySql是一个关系型数据库管理系统,所谓关系型数据库是将数据存储在不同的表中,而不是将所有数据放在一个大仓库中。这提高了速度和灵活性。而MySql软件是一个开源软件。

注意MySql支持的TimeStamp最大范围有问题。在32位机器上,支持的值范围是年份不能超过2030,如果在64位机器上,年份可以达到2106。没有关系,两者都可以表示为9999-12-31,所以这一点必须注意;另外,在安装MySql时,我们一般都会选择典型(典型安装)。当然,如果还有其他用途,最好选择Complete(完全安装);在安装过程中,通常会要求您选择服务器类型。有三种服务器类型可供选择,(Developer(开发机器)、Server Machine(服务器)、Dedicated MySql Server Machine(专用 MYSQL Server)),选择哪种类型的服务器仅影响配置向导、内存等。 ,否则对其他方面没有影响;所以,如果我们是开发者,我们可以直接选择开发机;然后有一个数据库使用对话框可以选择,我们按照默认即可;

连接和断开与服务器的连接:

连接:在 Windows 命令提示符处输入类似于以下内容的命令集:mysql –h host –u user –p

。比如我使用的时候输入:mysql –h localhost –u root –p

然后就会提示输入用户密码。此时,如果有密码,则输入密码并回车。如果没有密码,直接按回车即可进入数据库客户端;连接远程主机上的mysql,可以使用以下命令: mysql –h 159.0.45.1 –u root –p 123

断开服务器连接:进入客户端后,可以立即输入quit并回车;

以下是数据库相关命令 相关说明

可以输入以下命令对数据库表或数据库进行相关操作,这里省略,直接在文中解释;

Select version(),current_date;//从服务器版本号和当前日期获取当前mysql

Select user(); //获取当前数据库的所有用户

Use databasename;进入指定的数据库,然后就可以对该数据库中的表进行操作

showdatabases; //查询当前数据库显示数据库中的所有数据库;

Batabase创建数据库名称;创建数据库,例如:创建数据库管理器;

显示表格; // 查看当前数据库所有表;

创建表tablename(列);创建表并为表分配相关列,例如:create table pet(name varchar(20),owner varchar(20),species varchar(20),sex char(1 ) ),出生日期,死亡日期);

描述表名;详细显示表中的所有信息,例如:描述动物;

可以使用命令一次性插入多条记录,例如:

Insert into pet values('Puffball','Diane','hamster','f','1993-12-3', null ) ,('Puffball','Diane','hamster','f','1993-12-3',now());

从宠物中选择 *;查询pet表中的所有记录并显示;

ID=1 的宠物的最后一个;删除ID为1的记录;

更新宠物集出生='2001-1-3',其中名称='Bowser';更新名为 Bowser 的记录中的birth字段的值;

选择不同的宠物主人;如果有多个,请从 pet 表中选择具有唯一所有者字段值的行。

相关日期计算:

选择name,birth,curdate(),(year(curdate())-year(birth))作为宠物的年龄;

这里使用year()函数提取来自相应字段的年份。当然,包括类似month()、day()等;任意数量的字符,在SQL模式下默认大小写都会被忽略,例如:select * from pet where name like '%fy';

当然,你也可以使用正则表达式模式进行配置

同时,在SQL中,还应该注意分组函数、排序函数、统计函数等的相关使用。这里仅举一两个;

选择物种,按物种从petgroup中选择count(*);

从petorder中按birthdesc选择*;

查询最大值相关操作:() select petmax;

获取前几条记录。主要用于寻呼请求操作,

Select * from pet order bybirth description limit 3;取前3条记录,

select * from pet order bybirth desc limit 0.3;这个可以用于分页请求,limit后面的第一个参数是起始点位置,第二个参数是要接收的记录数;

关于在创建的表中写入自增字段:

create table person (id int(4) not null auto_increment,name char(20) not null, Primary key (id));

Change表格操作:

向表格中添加字段:注意,在这个地方,如果添加的字段较多,必须用括号括起来,否则会出现问题。如果对于单个字段,没有括号就可以了;

添加表测试(地址varchar(50) not null default 'xm', email varchar(20) not null);

更改表中字段的名称或者如果更改其相应的相关属性,请使用更改为可操作;

Edit table Email Email varchar(20) not null Default 'zz';//不修改字段名称

删除表中字段:

Table Test Drop Email edit; //删除单个字段

表测试Drop更改地址,Drop电子邮件;//删除多列

您可以使用 drop 删除主键和外键,例如:

Alter Table Test Dropforeign Key fk_symbol;

删除索引:

Drop index index_name on table_name;❀drop: on Test;

向表中插入记录:注意,如果插入表中的记录不包含所有字段,则应先列出字段名,否则会报错;

插入测试(名称)值​​('ltx');

插入测试值(1,'ltx');

,例如:

插入测试(名称)值( 'ltx'),('hhy'),('xf');

删除表中记录:

Delete from test;//删除表中所有记录;

Delete from test where id=1;//删除表中特定条件下的记录;

如果要查询一个表的某些字段或某些表,然后将这些字段插入到另一个表中,可以使用 insert ....select 语法;

Insert into testt(Name) ( select name) from test where id = 4);

要从文件中读取行并将其插入到数据表中,可以使用 Load Data infile 语句;

将文件'Test.txt'中的数据加载到表test中;

您可以描述获取列信息的语法;

test describe;//可以查看test表的所有信息,包括对应列字段的数据类型等;

MySql事务处理相关语法;

开始新事务:开始事务或开始事务

提交事务:commit

事务回滚:回滚

设置autocommit true|false语句连接;

示例:

开始交易;

更新人员集名称='LJB',其中 id=1;

提交 | rollback;

数据库管理语句

更改用户密码:以root用户为例,可以写成如下; mysql –u root –p 旧密码 –password 新密码

Mysql –u root –密码 123; // 将root用户的密码修改为123,由于root用户最初是没有密码的,所以省略-p旧密码;

例如更改一个用户的密码:mysql –u ltx –p 123 –password 456;

添加一个用户test1,密码为abc,这样他就可以随时登录主机,对所有数据库进行查询、设置、修改、删除权限

对test1@”%”上的*.* Gent select,set,update,delete by 'abc';

添加一个test2用户,密码为abc,这样他就只能登录localhost并可以发出请求,插入、修改和删除数据库;

将 mydb.* 上的选择、设置、更新、删除授予由 'abc' 标识的 test2@localhost;

如果您不希望用户 test2 有密码,可以输入以下命令来删除密码:

Grant select,insert,update,delete on mydb.* to test2@localhost recognizes by " " ;

数据库备份常用命令: mysqldump –h host –u username –p dbname 保存路径和文件名

然后回车,会要求输入用户密码。输入密码后,再次按回车即可;

Mysqldump –hlocalhost –uroot –p test E:\db\test.sql

该命令详细解释:

该命令是备份测试数据库,并将备份内容保存为测试。 sql文件,保存在E:\db下;

命令-p中,前面测试的是数据库名称,然后在数据库名称后面加一个“”,然后下一步就是写入要保存的位置和保存文件的文件名;

将保存的数据库导入数据库:即运行.sql文件将数据库导入数据库 -

首先需要创建数据库,然后运行以下命令: mysql –hlocalhost –uroot –p linuxE:\db\test.sql 然后回车并输入密码;

解释一下上面的命令:linux是要导入的数据库名称,后面跟符号“”,然后是要导入的数据库文件;

导出数据库并保存为XML文件,并将XML文件中的数据导入到数据库中:

导出表中的数据:mysql –X –h HostName –u userName –p Pwd –e "use数据库名称 sql;"sqldump –xml –h HostName –u UserName –p pwd dbName tableName //这个仅用于在当前mysql客户端中显示,不保存到文件中;

相关说明:-X代表文件格式是XML,-e不能写出来,要操作的语句必须用双引号括起来;单引号不起作用;

例如:mysql –X –hlocalhost –uroot –p –e "use test; select * from pet;"E:\db\out.xml

将 XML 文件中的数据导入数据库:

插入into tableNamevalues(1,load_file('filepath'));

例如:insert into petvalues(1,load_file("E:\db\out.xml"));

数据库状态及查询过程view:

Show status;//查看状态

Show process list;//查看进程

要更改用户名,请使用以下命令:

Update set user="new name" where user ="旧用户名";

为数据库用户设置管理员权限:

Mysqladmin –h host –u username –p pwd;

以root用户为例;

Mysqladmin –h localMysqladmin –h

存储过程和函数

存储过程和函数分别使用create procedure 和create function 创建。语句,程序要么是程序,要么是函数,使用call语句调用程序,程序只能使用输出变量返回值;

在MySql5.1中创建子例程,需要创建例程权限,例程的更改和执行权限会自动授予创建者;

创建存储过程:

首先声明分隔符。所谓分隔符是指你告知mysql客户端你输入了一条sql语句的一个或多个字符。字符串符号,这里我们使用“//”作为分隔符;

Delimiter 分隔符 \

像:delimiter //

重新创建存储过程:

创建过程存储过程名称( )

声明存储过程的开头:

begin

然后开始编写存储过程主体:

Select * from pet;

End:♿End:♿End: /

现在写出所有的例子。完整代码为:

Delimiter //

Create procedure spt() //注意这里存储过程名和括号之间要有空格

Start

Select * from pet;

End;//至此,整个存储过程结束了

执行存储过程:

调用存储过程name();//

例如执行存储过程为:

调用 spt(); //

需要注意的是,存储过程名称后面必须加一个空格,后面的括号是用于传递参数的参数列表;另外,我们创建存储过程之后,只是创建了,而且是调用stored procedure name();//就完成了,我们可以看到存储过程的结果;

MySQL 有哪些推荐教材

1和《MySQL技术内幕:InnoDB存储引擎》

《MySQL技术内幕:InnoDB存储引擎》的作者是蒋成耀。本书从源码的角度深入剖析了InnoDB

的架构、实现原理和工作机制,并提供了大量的最佳实践。

2、《MySQL完全手册》

《MySQL完全手册》详细介绍了如何使用可定制的 MySQL 数据库管理系统来支持强大、可靠的任务关键型应用程序。

3。 《深入浅出mysql》

《深入浅出mysql》从数据库基础、开发、优化、管理和维护四个方面详细介绍MySQL。

每个部分都是一个独立的项目。

基础篇主要适合MySQL初学者。内容包括MySQL安装与配置、SQL基础知识、MySQL支持的数据类型、MySQL中的运算符、常用函数、图形工具的使用等。并讨论了与数据库索引相关的一些问题。需要注意的是,MySQL

支持很多存储引擎,不同的存储引擎对索引的支持不同。

5和《高性能MySQL》

《高性能MySQL》是分享MySQL实践经验的书籍。它不仅帮助MySQL初学者提高使用技能,

向更有经验的MySQL DBA展示了开发高性能MySQL应用程序的方法。

扩展信息:

《MySQL技术内幕:InnoDB存储引擎》是目前国内唯一一本关于InnoDB的书。由资深MySQL

专家亲自编写,中外数据库专家推荐。他的权威是毋庸置疑的。

它可以为读者设计和管理高性能、高可用的数据库系统提供极好的指导。本书注重实际应用,辅以大量

案例,操作性强。本书首先全景式地介绍了MySQL独特的插件式存储引擎,并分析了MySQL各种存储引擎的优点和应用环境。

参考:百度百科-MySQL技术内幕:InnoDB存储引擎

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

热门