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

MySQL数据库基本问题,数据库问题分析

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

本文目录:

  • 1.MySQL数据库基础+数据库基本操作?
  • 2、MySQL数据库的基本问题
  • 3.网站MySQL数据库的基本问题
  • 4、MYSQL数据库有哪些基本问题?

MySQL 数据库基础 + 数据库基本操作?

所需信息以链接的形式提供给需要的学生。

我使用的mysql版本是:Mysql-5.5.45-win64.msi 密码是:26zw

图形工具Navicat(前期不推荐,手动输入即可):Navicat 密码: c7fs

开始我的MySQL之旅开始于2016.12.04

--WH

1.数据库安装

这里就不多说了,关于如何安装的教程太多了mysql 在网络上。我给你的mysql按照这个安装指南(MySQL安装教程)就可以完全安装了。

如果安装完mysql后需要使用Windows命令窗口(即cmd)来控制mysql,则需要配置环境变量,在安装的mysql下找到bin并将其文件夹放入环境变量的路径中。这就对了。检查是否成功的方法是在cmd命令窗口中输入mysql。会出现一大段英文,说明成功了。否则就会失败。如果不会的话就去百度找教程。 ? uAccount  -p 密码

输入密文:mysql -uroot -p 按回车,会提示输入密码(输入pssword:)。这时你所写的密码就会显示为***。

3。查看mysql中的所有数据库(固定字命令一般都是大写字母,你要习惯这一点,读多了,敲多了就认得出来)

前四个数据库都包含在mysql中了 是的,就是是必要的。

显示数据库;

4。创建名为 test_1 的数据库

格式:CREATE DATABASE 数据库名称

CREATE DATABASE test_1;

5。删除名为 test_1 的数据库 数据库

格式:DROP DATABASE 数据库名称

DROP DATABASE test_1;

总结:学习了数据库的三个操作: 1.查看所有数据库 2.创建数据库 3.删除数据库

3.表的数据基本操作

数据表、数据库和MySQL的关系

MySQL存储很多数据库,一个数据库可以存储很多表。

数据表的添加(创建表)删除(删除表)修改(更改表字段)查询(查询表结构)。注:这里的编辑对象是表格。对表的操作是对表的结构和对表中字段的操作(字段和记录一定要区分清楚)

前提:表在数据库下面,所以首先要确认是哪一个表您要使用的数据库。

使用测试_1;

1。创建数据表

格式:CREATE TABLE数据表名称(

 字段名称1数据类型[列级限制],

 字段名称2数据类型[列级限制],

 字段名称3数据类型【列级限制】

 ); 

注:格式不一定要这样写;它可以完全写在一行上。但当你这样写的时候,就很难注意到了。我写这篇文章只是为了让事情更清楚。 ?列代表垂直,行代表水平  

3。稍后将讨论限制

1.1。创建无限制的学生表

 CREATE TABLE Student( idINT(11), nameVARCHAR(12),ageINT (11)  );

注:SHOW TABLES 查询数据库中的所有表。

1.2。创建受限学生表

 六大约束:主键约束、外键约束、非空约束、唯一约束、默认约束、自增

1.2.1:主键约束

PRIMARY KEY:唯一且不能为空(非空)。通俗地说,就是向表中添加记录时,该字段下的数据不能重复,也不能清除。例如,上面创建的表。例如,如果ID字段使用主键约束,则向表中添加两条记录。那么ID不能相同,不能为空。一般来说,每个表都有一个字段作为其主键,该字段唯一标识该记录。如果以后需要查找该记录,也可以通过该主键确认该记录。由于主键是唯一且非空的,表中每条记录的主键都是不同的,因此根据主键可以找到对应的记录。而不是多个重复记录。如果没有主键,表中就会出现很多重复记录,浪费存储空间,执行查询时消耗更多资源。

一般情况下,受主键约束的字段通常称为表的主键

一个字段的主键约束

两种方法都可以

CREATE TABLE Student(CREATE TABLE Student(

idINT(11) 主键,idINT(11),

nameVARCHAR(12),nameVARCHAR(12),

ageINT(11)ageINT(11),

); 主键 ( id ) );

多字段主键约束(复合主键)

id和name为城市主键,表示以后插入的记录中,不会再使用该id和name相同的时间可以是相同的。例如,可以是这样。一条记录是id=1,name=yyy,另一条记录是:id=1,name=zzz。这没关系。正如您所理解的,这并不是说这两个领域之间的差异不能相同。

创建表 Student(创建表 Student (

Idint (11) 主键、Idint (11)、

NameEbar (12) 主键、 NAMEBARGAR (12)、

ageint (1) 1 ) ageINT(11),

);PRIMARY KEY(id,name) );

1.2.2: 外键的限制

什么是外键通过一个例子就会变得清楚,有两张表,一张表是员工表(employee),一张表是部门表(dept)。一个员工属于一个部门,那么我们如何通过员工知道他属于哪个部门呢?那么可以在员工表中只添加一个字段,这个字段可以代表员工所在的部门,那么这个字段就只能是存储部门中的主键(因为主键是唯一的,所以肯定可以代表哪个部门)是department,然后代表员工所在的部门(department,如果是部门名,有的部门名可能重名,无法区分),这样的字段就满足外键的特点,并且可以使用外键约束,使得该字段只能存储表的另一个主键。如果不受外键限制,该字段不能保证存储的值将是另一个表的主键值。

外键约束的特点:

1。外键约束可以描述任意字段(包括主键),可以为空,一个表中可以有多个外键。但外键字段中的值必须是另一个表中的主键。

2。与外键关联的两个表之间的关系可以称为父子表或主从表。子表(从表)是有外键字段的表,父表(主表)是外键字段引用的表。

3。子表中被外键约束修改的字段必须与父表的主键字段类型相同。

注意:如果一个表有一个被外键修改的字段,则称该表有外键(意思是“有一个外键”,而不是“是一个外键”),并且外键约束表中给出。选择一个名字,所以我们常说这个表有没有外键的时候,并不是指被外键约束改变的字段名,而是指这个表是否有外键约束。也就是说,这个表的外键不能说是xxx(表中外键约束改变的字段名)。这种说法是不正确的,但大多数人都已经习惯了。虽然影响不大,但如果需要了解一些东西,往往会出现问题。

格式:CONSTRAINT 外键名称 FOREIGN KEY(受外键限制的字段名称) REFERENCES 主表名称(主键字段)

英文解释:CONSTRAINT:约束 REFERENCES:引用

CREATE TABLE 表A

( id INT(11),

名称 VARCHAR(22),

位置 VARCHAR(50),

主键(id)

);

创建表 tableB

( id INT(11),

name VARCHAR(22) NOT NULL,

deptId INT(11),

PRIMARY KEY(id),

CONSTRAINT tableA_tableB_1 FOREIGH KEY(部门编号) 参考文献表A (id )

);

 说明:tableB中有一个名为tableA_tableB_1的外键,链接两个表tableA和tableB。外键约束改变的字段是B表中的deptId,主键字段是A表中的id 

1.2.3:非空约束

NOT NULL。该约束改变的字段不能为零。此约束包含在主键约束

CREATE TABLE tableA

(

id INT(11),

name VARCHAR(22) NOT NULL,

location VARCHAR(50),

PRIMARY KEY(id)

);

1.2.4:唯一性约束

UNIQUE 被唯一性约束修改的字段意味着该字段中的值是唯一的,不能具有相同的值。简单来说,就像插入两条记录。两条记录中该字段的值不能相同。经过。

 创建表表A

(

id INT(11),

名称VARCHAR(22)唯一,

位置VARCHAR(50),

主键(id) ) ;

即插入的记录中,每条记录的name值不能相同。

1.2.5:默认约束

Default 指定该列的默认值。例如,如果男生较多,则可以将性别设置为默认男性。如果插入一行记录时性别留空,则默认值为 Addmale  

CREATE TABLE table

(

id INT(11) PRIMARY KEY,

name VARCHAR(22 ) NOT NULL ,

deptId INT(11) 默认 1111,

工资 FLOAT

);

1.2.6:自动增加

AUTO_INCREMENT。一张表中只有一个字段可以使用 AUTO_INCRMENT,并且使用该限制的字段只能是整数类型(所有整数类型 TINYINT、SMALLIN、INT、BIGINT),默认值为 1,即从 1 开始递增。一般是这样用于主键,自动递增,这样每个主键的值都不同,我们不需要自己管理,所以主键可以自己自动生成

CREATE TABLE table ( id INT ( 11) 主键自动递增,名称 VARCHAR (22) NOT NULL);

2。查询表结构

2.1。查看表基本结构说明

格式1:DESCRIBE table-name/DESC table-name。这两个的功能是一样的,单词的缩写描述

DESCRIBE 学生;

2.2。查看创建表的指令 

 格式:SHOW CREATE TABLE表名

 SHOW CREATE TABLE学生;

这样显示的格式很差,无法读取。明白了,所以我有如下语句

格式:SHOW CREATE TABLE 表名\G

SHOW CREATE TABLE 学生\G;

3。更改数据表

更改数据表包括:更改表中的字段添加、删除、修改。这里使用的关键字是ALTER

3.1,更改表名

格式:ALTER TABLE旧表名RENAME [TO]新表名;

将student表的名称更改为student1(更改后,在Return中)

ALTER TABLE Student RENAME TO Student1;

3.2.更改表中字段名称

格式:ALTER TABLE 表名称 CHANGE 旧字段名称 新字段名称 新数据类型

更改学生表中字段名称 字段名称名称将更改为用户名称

ALTER TABLE 学生更改姓名用户名 VARCHAR(30) ;

3.3。更改表中的数据类型

格式:ALTER TABLE 表名 MODIFY 字段名数据类型  

ALTER TABLE 学生 MODIFY 用户名 VARCHAR(20);

说明:只能更改字段名的数据类型改变了,但是原理和上面的改变是一样的。这里也有更改字段名称的过程,但是更改的字段名称又发生变化。前面的字段名称是一样的,但是数据类型不同。

3.4。改变字段的排列位置

 方法一:ALTER TABLE表名MODIFY字段1数据类型FIRST|AFTER字段2

 说明:将字段1的位置放在前面,或者放在指定字段2之后

 ALTER TABLE Student MODIFY username VARCHAR(20) AFTER Age;

方法二:ALTER TABLE 表名 CHANGE 字段 1 字段 2 数据类型 FIRST|AFTER 字段 3 

说明:其实是一样的,会是字段 2 覆盖字段 1,然后排序

ALTER TABLE Student CHANGE username username VARCHAR(20) AFTER Age;

总结

CHANGE 和 MODIFY 有什么区别?

原理是一样的。 MODIFY 只能更改数据类型,而 CHANGE 可以更改数据类型和字段名称。换句话说,MODIFY是CHANGE的更具体的操作。您可能会觉得使用 CHANGE 只更改一种数据类型不太舒服,因此我们添加了一个可以使用 MODIFY 关键字直接更改数据类型的功能。

3.5。添加字段

格式:ALTER TABLE 表名 ADD 新字段名数据类型[限制][FIRST|现有表名之后]

说明:在特定位置添加新字段。如果没有指定位置,则默认为最后一个。

ALTER TABLE 学生 ADD 性别 VARCHAR(11);

3.6,删除字段

格式:ALTER TABLE 表名 DROP 字段名;

ALTER TABLE 学生 DROP 性别;

3.7,删除表外国键约束

格式: ALTER TABLE 表名 DROP FOREIGN KEY 外键约束名称

注意:外键约束名称不是指被外键约束更改的字段名称。请记住,这是我们正在创建的外键约束。关系期间所起的名字。 ?再深入一点就不清楚了,所以等以后再说吧。

4。删除表

4.1。删除不相关的表

格式:DROP TABLE 表名;

ALTER TABLE 学生;

4.2。删除与其他表链接的主表

这是更重要的一点。如果删除有外键关系的两个表的主表,则不会删除,还会报错。因为有一张桌子取决于他。那我们该怎么办呢?针对这种情况一共有两种方法

1。首先删除子表,然后删除父表。这样就达到了删除父表的目的,但是子表也被删除了

2。通过先去掉外键关系,然后删除父表,就可以达到目的,子表保留下来,而只删除不需要的父表。在3.7中我们解释了如何删除外键关系。

基本的MySQL数据库问题

首先检查英文输入法中是否输入了括号、分号和逗号。中文下面的符号就会错。

第二就是不知道你的MySQL版本是否支持中文字段名。 ,应该没有别的了

网站mysql数据库的基本问题

1,是的,这是确保数据安全所必需的。

2,应该是后者,避免读写冲突;

3、有的数据库支持同时读取,但是绝对不允许同时读写或者写进程

4,,5 计算机的处理能力是很强的。甚至家用电脑的时间单位也是微秒。服务器机器的威力将会更加强大。而且,网络游戏实际上并不占用太多流量,只需要很小的请求。对于某些数据,数据库服务器通常不会直接连接到游戏客户端,而是由游戏运营商的服务器处理后向数据库服务器请求数据。

关于MYSQL数据库的一些基本问题?

不,从关系角度来看,从表依赖于主表。如果没有主表,从表依赖谁?只需创建两个表,然后将一个表设置为依赖于另一个表。第二个问题是一样的。

版权声明

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

热门