首页 > 其他分享 >《信息安全与设计》第十四章学习笔记

《信息安全与设计》第十四章学习笔记

时间:2022-11-15 20:33:26浏览次数:42  
标签:name mysql 数据库 信息安全 t2 笔记 MySQL 第十四章 table

MySQL数据库系统

知识点

MySQL简介
1.MySQL是一个关系数据库系统在关系数据库中,数据存储在表中。每个表由多个行和列组成。表中的数据相互关联。表也可能与其他表有关联。关系结构使得可在表上运行查询来检索信息并修改数据库中的数据。
2.MySQL是一个开源数据库管理系统,由服务器和客户机组成。在将客户机连接到服务器后,用户可向服务器输入SQL命令,以便创建数据库,删除数据库,存储、组织和检索数据库中的数据。- -- MySQL有广泛的应用。除了提供标准的数据库系统服务外,MySQL 和PHP已成为大多数数据管理和在线商务网站的主干网。

安装与使用MySQL
1.Ubuntu Linux 可通过以下命令安装

 sudo apt-get install mysql-server
 mysql_secure_installation

2.Slackware Linux在Slackware 14.0或更早版本中,可通过以下步骤配置MySQL
(1)设置my.cnf : MySQL在启动时加载一个名为my.cnf的配置文件。该文件要在首次设置MySQL时创建。在/etc目录中,有几个示例my.cnf文件,文件名分别是my-small. cnf. my-large.cnf等。选择所需的版本来创建my.cnf文件,如
cp /etc/my-small.cnf /etc/my.cnf
(2)安装所需数据库:MySQL需要一个所需数据库集,用于用户识别等。要安装它们, 可使用mysql用户作为超级用户,并使用以下命令安装所需的初始数据库。
mysql_install_db
(3)设置所需的系统权限:该步骤确保mysql用户拥有mysql系统的所有权。
chown -R inysql.mysql /var/lib/mysql
(4)通过以下操作使Zetc/rc.d/rc.mysqld可执行:
chmod 7S5 /etc/rc.d/rc.mysqld

这将在后续系统引导上自动启动MySQL守护进程mysqld。

3.数据库操作
(1)连接MYSQL服务器

mysql -u root -p
Enter password:
mysql>

(2)显示数据库:SHOW DATABASES命令可显示MySQL中的当前数据库

(3)新建数据库:CREATE DATABASE dbname 创建一个名为dbname的数据库,如果数据库已经存在,则可以使用IF NOT EXISTS子句对命令限定。

(4)删除数据库:DROP DATABASE dbname 删除已存在的命名数据库,该命令可以用一个可选的IF EXISTS 子句限定。

(5)选择数据库:USE dbname命令选择一个数据库

(6)创建表:CREATE TABLE table_name 命令回在当前数据库中创建一个表;DESCRIBE 命令显示表格式和列属性。

(7)删除表:DROP TABLE table_name 命令删除表

(8)Mysql中的数据类型
A.数值类型:
a.INT:整数(4字节),TINYINT:(1字节)S,MALLINT:(2字节)等。
b.FLOAT:浮动指针数。

B.字符串类型:
a.CHAR(size):固定长度字符串,长度为1~255字符。
b.VARCHAR(size):可变长度字符串,但不能使用任何空格。
c.TEXT:可变长度的字符串。

C.日期和时间类型:
a.DATE:日期格式为YYYYMM-DD。
b.TIME:以HHMMSS格式保存时间.

(9)Mysql中的数据操作
A.插入行:
要在表中添加行,可使用INSERT命名,具有语法形式:
INSERT INTO table_name VLAUES(columnValuel,columnValue2,....);

B.删除行:
使用DELETE命令从表中删除行

DELETE FROM table_name;
DELETE FROM table_name WHERE condition;

(10)更新表:
UPDATE命令用于修改表中的现有记录(列)
UPDATE table_name SET coll = value1, col2 = value2,…… WHERE condition;

(11)修改表:
A.ALTER TABLE命令用于添加、删除或修改当前表中的列。它还用于添加和删除当前表中的各种约束条件。
B.修改表名
a.如需修改表名,可使用以下命令:
ALTER TABLE table name renAme To new_name;

b.添加列 要在表中添加列,可使用以下命令:
ALTER TABLE table name ADD column name datatype;

c.删除行 可使用以下命令删除列:
ALTER TABLE table name DROP column name datatype;

c.更改/修改行 可使用以下命令修改表中某列的数据类型:
ALTER TABLE table name ALTER COLUNN column_name datatype;

d.关联表
一个真正的数据库可以能包含多个相互关联的表,使用主键-外键约束条件来定义表关系。
I.一对一
II.一对多
III.多对多
IV.自引用

C.连接操作
在MySQL中,可使用连接操作在多个表中检索数据。连接操作有4种不同的类型。
I.(INNER)JOIN tablel,table2:检索两个表中共有的项。
II.LEFT JOIN tablel,table2:检索表1中的项以及两个表中共有的项。
III.RIGHT JOIN tablel,table2:检索表2中的项以及两个表中共有的项。
IV.OUTER JOIN tabell, table2:检索两个表中非共有以及没有用的项。

对于正则集运算,MySQL中的连接操作可以解释如下。+表示两个集合的并集,^表示两个集合的交集。则有
I.(INNER) JOIN t1, t2 = t1 ^ t2
II.LEFT JOIN t1, t2 m t1 + (t1 ^ t2)
III.RIGHT JOIN t1, t2 = t2 +(t1 ^ t2)
IV.OUTER JOIN t1, t2 = t1 + t2;

实践
打开mysql

创建用户"username",密码设置为"userpassword",为所有数据库/表富裕CREATE和INSERT权限。

标签:name,mysql,数据库,信息安全,t2,笔记,MySQL,第十四章,table
From: https://www.cnblogs.com/wxl2761407387/p/16893749.html

相关文章

  • k8s“弃用docker”是怎么回事儿?(chrono《kubernetes入门实战课》笔记整理)
      来自俺自己的一句话:这是一个扩展了解,个人觉得对于理解docker,k8s关系,还有各厂之间的竞争、技术演化的理解是有帮助的。所以还是做了一篇笔记。 2014年,docker在容器......
  • 本地代码上传github(个人笔记)
    本片作为记录个人学习内容,参考另外两位大咖的内容,由于是只考虑自己了解范围,存在未说明的地方可以查看底部连接查看参考文章。前期准备:1,github上有账号,有仓库,复制仓库地址......
  • 道长的算法笔记:基础最短路模型
    #include<bits/stdc++.h>usingnamespacestd;typedefpair<int,int>ii;//移动轨迹向量化intadd[3]={+1,-1,0};intmul[3]={0,0,1};intvist[10000......
  • mysql使用desc(describle)和explain查看执行计划--笔记
    大家查看mysql执行计划时用的最多的是explain,其实还可以等效使用desc、describle查看执行计划,desc和explain命令还可以有别的作用如查看表列属性等功能。1、查看表结构和......
  • GitHub+Typora实现云笔记一键上传
    git实现笔记自动上传功能简介:将更新内容自动上传同步git,无需手动提交,解锁一键式同步。流程大致为,创建新仓库,配置公钥和私钥,安装quicker软件,通过quicker上某脚本完成一键......
  • IT项目管理学习笔记4(项目成本管理)
    IT项目管理学习笔记4(项目成本管理)1.项目成本管理的重要性超支(overrun)是实际成本超过成本估算的附加比例或金额成本(cost)是实现一个特定目标而牺牲或者放弃的资源项......
  • 第十四章学习笔记
    第十四章MySQL数据库系统1.MySQL介绍MySQL是一个关系数据库系统在关系数据库中,数据存储在表中。每个表由多个行和列组成。表中的数据相互关联。表也可能与其他表有关......
  • [Python]学习笔记之-正则表达式
           在使用Python做文件处理时,经常需要使用到匹配、搜索功能,这就离不开一个核心的知识:正则表达式。正则表达式(RegularExpression)描述一种字符串匹配的模式(pat......
  • 狂神说Go语言笔记—Go函数详解
    什么是函数函数是基本的代码块,用于执行一个任务Go语言最少有个main()函数你可以通过函数来划分不同功能,逻辑上每个函数执行的是指定的任务函数声明告诉了编译器函数的......
  • prufer序学习笔记
    知识总结一种用于生成树计数的与树一一对应的数列。一个长度为\(n-2\)的Prufer序列,唯一对应一棵n个点固定形态的无根树。树变序列找到编号最小的叶子\(x\)设与......