mysql入门

mysql安装
安装程序可以直接在MySQL的官网上下载,程序是开源的,不用破解,在百度上自习百度一篇安装教程就可以安装了。
之前安装的最新版本5.7,然后安装后出现了无法启动的错误,所以讲Sever卸载后,再把注册表卸载了,然后重新安装了5.1版本的,能够正常启动了,但是还没有试功能是否可以正常使用。

mysql启动,停止与卸载

在 Windows 命令提示符下运行:

启动: net start MySQL

停止: net stop MySQL

卸载: sc delete MySQL

操作过程

启动服务
net start mysql
MySQL的登录
cls清屏
mysql -u(user) root -p(password)-h127.0.0.1(host) 注:p后面的密码需要紧跟着p
输入密码登录
输出版本信息:mysql -v(已经登录了,就是显示mysql>
没有登录则显示:C:\User\Administrator>)这两种状态下输入的命令是不一样的,前者显示是已经登录了root账号下的mysql,后者还是cmd命令
在cmd命令下输入的命令不加分号
但是在登录数据库后输入的命令需要加分号
而且如果不加分号输入命令的话,窗口会一直显示->这个提示符的意识表示继续,意思是命令还在一直输入,需要添加一个分号然后回车命令就正确输入了。

退出
mysql>exit;
mysql>quit;输入的命令不能加分号,好像quit是补不能退出的
mysql>\q;

修改MySQL的提示符
方法一(未登录之前):mysql -uroot -p123456 –prompt \h
方法二:(登录成功)直接输入prompt +提示符
prompt \u@\h@\d>
改为user@主机名@数据库名字的形式

一些常用的命令
显示当前服务器的版本
select version();
显示当前日期时间
select now();
显示当前用户
select user();
不区分大小写,可以部分大写或全部大写。

MySQL语句的规范
关键字与函数名称全部大写
数据库名称、表名称、字段名称全部小写
SQL语句必须以分号结尾

新建数据库
打开数据库用 use db_name;
create {database|schema} [if not exists] db_name [default] character set [=] charset_name;
[default] character set [=] charset_name;这个命令的意思是将默认的编码方式转化为我们想要的编码方式。
大括号是必须的
中括号可选
没加括号的是必须的

create database databasename;

查看数据库默认的存储引擎:
show variables like ‘storage_engine’;
MySQL默认的是InnoDB存储引擎
给MySQL的表提供了事务、回滚、崩溃修复能力和多版本并发控制的事务安全。
创建table
首先选择数据库:
use 数据库名;
显示表格内容:
describe 表格名;
查看当前服务器下数据库列表
show databases;
查看数据库的创建信息,包括使用的编码信息
show create database db_name;

修改数据库
alter {database|schema} [if not exists] db_name [default] character set [=] charset_name;

删除数据库

drop database db_name;
数据类型
数据表
数据表(或称表)是数据库最重要的组成部分之一,是其他对象的基础。
数据库是骨架,数据表是血肉。
打开数据库
查看数据库中数据库的目录
show databases;
打开(使用)某一个数据库
use db_name;
查看当前打开的数据库
select database();
创建数据表
create table [if not exists] table_name(column_name_1 data_type,

column_name_n data_type,

)
column_name 列名称
data_type数据类型
eg:
salary float(8,2) unsigned,
解释:列名称叫做salary,是浮点类型,总共8位,小数点2位,无符号型的。

查看数据表列表

show tables [from db_name] [like ‘pattern’ | where expr]
from db_name 查看其它数据库中的其他数据表
eg:
show tables from mysql;
如果要查看数据表table中具体的column
则输入
show columns from tb_name;

向数据表中插入记录

insert [into] tb_name [(col_name,…)]
values (val,…)
例:
insert tb1 values ( ‘tom’,25,7863.2);
如果省略col_name,则需要给所以得column都赋值,不然会出错。

记录查找

select expr,… from tb_name;
select * from tb_name;
eg:

SELECT * FROM test.school WHERE schoolname =’自贡市蜀光中学’ ;
在表中查询schoolname=‘自贡市蜀光中学’这个字的信息

空值与非空

null,字段值可以为空
not null ,字段值禁止为空

自动编号auto_increment,保证了唯一性

自动编号,且必须与主键组合使用
默认情况下,起始值为1,每次的增量为1

主键

主键约束
每张数据表只能存在一个主键
主键保证记录的唯一性
主键自动为not null

create tb3(
id smallint unsigned auto_increment key;
username varchar(30) not null;
);
这个的意思就是把表tb3中的id设为主键,每次创建一个对象的时候,都会以这个主键编号,这样就保证的唯一性。
就是说,如果我们后面插入的username中有同名的,但是它们还是有不同的一个编号,这样就保证了唯一性。就好比学生可以重名,但是每一个学生有一个唯一的学号,这样就保证了每一个学生的唯一性。

主键与auto_increment的关系

如果只要主键没有auto_increment这样是可以赋值,但是不能够赋相同的值,只有两者同时使用的时候才能够赋相同的值,利用自动编码来区分。

unique key

主键和unique key都可以唯一约束,但是主键只能有一个,但是unique key可以有多个

唯一约束
唯一约束可以保证记录的唯一性
唯一约束的字段可以为空值
每张表可以存在多个唯一约束

eg:一个既有1主键约束又有唯一约束的表
create table tb5(
id smallint unsigned auto_increment key,
username varchar(20) not null unique key,
age tinyint unsigned
);
赋值:
insert tb5 (username,age) values (‘tom’,22);
再赋相同的值就不行了。

defult

默认值

当插入记录时,如果没有明确为字段值,则自动赋予默认值

create table tb6 (
id smallint unsigned auto_increment key,
username varchar(20) not null unique key,
sex enum(‘1’,’2’,’3’)default ‘3’
);
insert tb6(username) values (‘tom’);
select * from tb6;

约束

1.约束保证数据的完整性和一致性
2.约束分为表级约束和列级约束
3.约束类型包括:
not null(非空约束)
[primary(主键约束)
unique key(唯一约束)
default (默认约束)
foreign key(外键约束)

外键约束的要求

1、父表和子表必须使用相同的存储引擎,而且禁止使用临时表。
2、数据表的存储引擎只能为innoDB。
3、外键列和参照列必须具有相似的数据类型。其中数字的长度或是否有符号位必须相同;而字符的长度则可以不同。
4、外键列

SQL中问号”?”的作用

?表示占位符,意思是那里有一个参量,但是不方便直接写
可能这个参量需要从其他地方调用,所以先用?占位,然后在后面的语句
中从其他地方调用来补全
String sql = “SELECT userid,name FROM tuser WHERE userid=? AND password=?” ;
pstmt = conn.prepareStatement(sql) ;
pstmt.setString(1,userid) ; // 这里设置了第一个?的值
pstmt.setString(2,password) ; // 这里设置了第二个?的值

等你“setString”完所有的?后,你的sql就构造好了。

AI 代码审查Review工具 是一个旨在自动化代码审查流程的工具。它通过集成版本控制系统(如 GitHub 和 GitLab)的 Webhook,利用大型语言模型(LLM)对代码变更进行分析,并将审查意见反馈到相应的 Pull Request 或 Merge Request 中。此外,它还支持将审查结果通知到企业微信等通讯工具。 一个基于 LLM 的自动化代码审查助手。通过 GitHub/GitLab Webhook 监听 PR/MR 变更,调用 AI 分析代码,并将审查意见自动评论到 PR/MR,同时支持多种通知渠道。 主要功能 多平台支持: 集成 GitHub 和 GitLab Webhook,监听 Pull Request / Merge Request 事件。 智能审查模式: 详细审查 (/github_webhook, /gitlab_webhook): AI 对每个变更文件进行分析,旨在找出具体问题。审查意见会以结构化的形式(例如,定位到特定代码行、问题分类、严重程度、分析和建议)逐条评论到 PR/MR。AI 模型会输出 JSON 格式的分析结果,系统再将其转换为多条独立的评论。 通用审查 (/github_webhook_general, /gitlab_webhook_general): AI 对每个变更文件进行整体性分析,并为每个文件生成一个 Markdown 格式的总结性评论。 自动化流程: 自动将 AI 审查意见(详细模式下为多条,通用模式下为每个文件一条)发布到 PR/MR。 在所有文件审查完毕后,自动在 PR/MR 中发布一条总结性评论。 即便 AI 未发现任何值得报告的问题,也会发布相应的友好提示和总结评论。 异步处理审查任务,快速响应 Webhook。 通过 Redis 防止对同一 Commit 的重复审查。 灵活配置: 通过环境变量设置基
【直流微电网】径向直流微电网的状态空间建模与线性化:一种耦合DC-DC变换器状态空间平均模型的方法 (Matlab代码实现)内容概要:本文介绍了径向直流微电网的状态空间建模与线性化方法,重点提出了一种基于耦合DC-DC变换器的状态空间平均模型的建模策略。该方法通过数学建模手段对直流微电网系统进行精确的状态空间描述,并对其进行线性化处理,以便于系统稳定性分析与控制器设计。文中结合Matlab代码实现,展示了建模与仿真过程,有助于研究人员理解和复现相关技术,推动直流微电网系统的动态性能研究与工程应用。; 适合人群:具备电力电子、电力系统或自动化等相关背景,熟悉Matlab/Simulink仿真工具,从事新能源、微电网或智能电网研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①掌握直流微电网的动态建模方法;②学习DC-DC变换器在耦合条件下的状态空间平均建模技巧;③实现系统的线性化分析并支持后续控制器设计(如电压稳定控制、功率分配等);④为科研论文撰写、项目仿真验证提供技术支持与代码参考。; 阅读建议:建议读者结合Matlab代码逐步实践建模流程,重点关注状态变量选取、平均化处理和线性化推导过程,同时可扩展应用于更复杂的直流微电网拓扑结构中,提升系统分析与设计能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值