当前位置: 首页 > news >正文

淄博网站制作公司定制网站建设jiage

淄博网站制作公司定制,网站建设jiage,网络服务推广易下拉技巧,荣耀手机商城官方网#使用数据库 use 数据库名; # 查询当前数据库是哪个数据库 select database(); 查看数据库版本 SELECT VERSION(); 查看当前用户 SELECT USER(); 查看所有用户() SELECT User,Host,Password FROM mysql.user;数据库 MySQL自带数据库: Information_schema: 主要存储…
#使用数据库
use 数据库名;
# 查询当前数据库是哪个数据库
select database();
查看数据库版本
SELECT VERSION();
查看当前用户
SELECT USER();
查看所有用户()
SELECT User,Host,Password FROM mysql.user;

数据库

MySQL自带数据库:

Information_schema: 主要存储了系统中的一些数据库对象信息:如用户表信息、列信息、权限信 息、字符集信息、分区信息等。(数据字典表)

performance_schema: 主要存储数据库服务器的性能参数

mysql: 存储了系统的用户权限信息及帮助信息。

sys: 5.7新增,之前版本需要手工导入。这个库是通过视图的形式把information_schema

performance_schema结合起来,查询出更加令人容易理解的数据

test:系统自动创建的测试数据库,任何用户都可以使用。

MySQL数据库的编码

MySQL的编码格式

在 MySQL 中,编码格式是用来定义字符集的存储和比较方式。不同的编码格式支持不同范围的字符,并且影响数据库的排序规则和比较结果。了解和选择合适的编码格式对于数据库的国际化和字符数据的准确存储至关重要。

utf8 和 utf8mb4 的区别

MySQL 提供了多种编码格式,其中 utf8 和 utf8mb4 是最常用的两种。utf8 编码格式在 MySQL 中支持最长三个字节的 UTF-8 字符,这意味着它只能表示 Unicode 中的基本多文本平面1。这个范围包括了大多数常用字符,但不包括四字节的字符,如某些表情符号。

utf8mb4 是 utf8 的超集,支持最长四个字节的 UTF-8 字符,能够存储所有 Unicode 字符,包括表情符号。因此,如果需要在数据库中存储表情符号或其他四字节字符,应该使用 utf8mb4 编码格式。

utf8mb4 的排序规则

utf8mb4 编码格式还有几种不同的排序规则(collation),例如 utf8mb4_general_ci、utf8mb4_unicode_ci 和 utf8mb4_0900_ai_ci。这些排序规则影响字符串比较和排序的行为。utf8mb4_general_ci 是一种性能较好的排序规则,但在某些情况下可能不够准确。utf8mb4_unicode_ci 基于 Unicode 标准提供了更准确的排序,但可能会稍微慢一些。utf8mb4_0900_ai_ci 是 MySQL 8.0 引入的新排序规则,提供了更好的性能和准确性1。

-- 查看数据库编码
SHOW CREATE DATABASE database_name;-- 查看表编码
SHOW CREATE TABLE table_name;-- 查看字段编码
SHOW FULL COLUMNS FROM table_name;-- 修改数据库编码
ALTER DATABASE database_name CHARACTER SET charset_name;-- 修改表编码
ALTER TABLE table_name CONVERT TO CHARACTER SET charset_name;-- 修改字段编码
ALTER TABLE table_name MODIFY column_name column_type CHARACTER SET charset_name;

将 table_name 替换为表名称,column_name 替换为字段名称,column_type 替换为字段类型,charset_name 替换为你要使用的编码。

创建数据库

使用命令是create
# 创建数据库
CREATE DATABASE 数据库名称;# 创建数据库,同时指定编码
create database db_name default charset="utf8mb4";
create database school DEFAULT CHARACTER SET utf8mb4;
create database school DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

例如:

查看当前数据库 

# 查看创建的数据库
show create databsse 数据库名称;

 

#查看当前所有数据库
SHOW DATABASES;

 

删除数据库 

使用drop命令
drop database  数据库名称;drop database [if exists] db_chengke;---为了使输出不报错,可添加上if exists,一般用于在大量SQL语句执行时,[]中的内容可省略,

例如:

数据库表的操作

数据表(table),是一种二维表格,类似于execel,用来存储真正的数据。

 创建表格

-- 语法结构
create table [if not exists] t_name (# 定义表结构字段名称1 类型 [约束条件],字段2  类型 [约束条件],……字段n 类型 [约束条件]
);

例如:

/**创建一个用户表用户的姓名用户的年龄用户的性别用户的地址用户的电话
**/
create table t_user (id int,name varchar(50),age int,gender char(5),address varchar(255),tel char(11)
);

插入数据 

删除表格

 
drop table  if exists t_user;

数据库约束

创建数据库表的时候,字段名称 该字段类型 [约束 [,……] ]。

约束是在表上强制执行的数据校验规则。约束主要用于保证数据库的完整性。当表中数据有相互依赖性时,可以保护相关的数据不被删除。大部分数据库支持下面五类完整性约束:

存在如下一些数据库表的约束:

默认值约束
主键约束
非空约束
外键约束
唯一约束
检查约束 (MySQL8之前,不生效。MySQL8之后是支持检查约束)

主键约束

主键从功能上看相当于非空且唯一,一个表中只允许一个主键,主键是表中唯一确定一行数据的字段。

一般建议主键采用“int类型”,一般建议由数据库自身维护这个字段的值。

当建立主键约束时,MySQL为主键创建对应的索引——主键索引,主键约束名总为PRIMARY。

案例演示:

create table t_name(id int primary key,   -- 主键约束name varchar(50));#插入数据insert into t_name values(1,"zxy");
Query OK, 1 row affected (0.00 sec)#必须是唯一值,出现重复就会报错insert into t_name values(1,"zxy");
ERROR 1062 (23000): Duplicate entry '1' for key 't_name.PRIMARY'#不能为空值insert into t_name values(null,"lh");
ERROR 1048 (23000): Column 'id' cannot be null-- 主键还存在一种写法
create table t_name(id int auto_increment,  -- 主键约束name varchar(50),primary key(id)
);
唯一约束

唯一性约束条件确保所在的字段或者字段组合不出现重复值
唯一性约束条件的字段允许出现一个NULL
同一张表内可建多个唯一约束
唯一约束可由多列组合而成
建唯一约束时MySQL会为之建立对应的索引——唯一索引。
如果不给唯一约束起名,该唯一约束默认与列名相同。

#唯一约束:
CREATE TABLE tb_student(id INT PRIMARY KEY AUTO_INCREMENT,NAME VARCHAR(18) UNIQUE  -- 唯一约束
);AUTO_INCREMENT ---自增1# 另一种写法:
CREATE TABLE tb_student(id INT AUTO_INCREMENT,NAME VARCHAR(18),  -- 唯一约束PRIMARY KEY(id),unique(name)
);

默认值约束 

给给定的字段,设置默认值

语法格式:

CREATE TABLE 表名 (字段 数据类型 DEFAULT 默认值
);

案例演示:

create table tb_user(id int primary key auto_increment,name varchar(50) unique,  --唯一约束age  int default 18  -- 默认值约束
);insert into tb_user(name, age) values("zxy", 18);insert into tb_user values(null, "xy", 16);  -- 因为存在自增,所以可以写nullinsert into tb_user values(default, "zx", 16);  -- 因为存在自增,所以可以写默认

非空约束 

不允许字段的值为空

语法格式:

CREATE TABLE 表名 (字段 数据类型 NOT NULL
);

案例演示:

create table t_user(id int primary key auto_increment,name varchar(50) unique not null,age  int default 18 ,password varchar(255) not null  --非空约束
);insert into t_user values(null, "zxy", 16);  -- 因为存在自增,所以可以写null
ERROR 1136 (21S01): Column count doesn't match value count at row 1
这里password字段有非空约束,所以报错

外键约束  
检查约束

注意:检查约束在MySQL8之前是不生效的,当然也不报错。

MySQL8之后,就支持了检查约束。

create table t_stu(id int primary key auto_increment,name varchar(50) not null unique,age int check(age >= 18),   --外键约束# gender char(2) check(gender in ("男", "女"))gender enum("男", "女")     ----外键约束
);

修改表结构

在sql中,也提供了动态修改表结构的sql功能。

使用alter指令,实现对数据库对象的结构的调整和修改。

语法格式:

修改列类型ALTER TABLE 表名 MODIFY 列名 列类型;   -- 注意存在值的情况,类型不一定能成功
增加列ALTER TABLE 表名 ADD 列名 列类型;
删除列ALTER TABLE 表名 DROP 列名;
列改名ALTER TABLE 表名 CHANGE 旧列名 新列名 列类型;
更改表名ALTER TABLE 表名 RENAME 新表名;RENAME TABLE 表名 TO 新表名;

复制表结构和内容

复制一个表结构的实现方法有两种
 
方法一:在create table语句的末尾添加like子句,可以将源表的表结构复制到新表中,语法格式如下。
create table 新表名 like 源表
 
方法二:在create table语句的末尾添加一个select语句,可以实现表结构的复制,甚至可以将源表的表
记录拷贝到新表中。下面的语法格式将源表的表结构以及源表的所有记录拷贝到新表中。
create table 新表名 select * from 源表
 
 
方法三:如果已经存在一张机构一致的表,复制数据
insert into 表 select * from 原表;
 
注意:如果直接复制表结构,则会默认将约束也复制过来
注意:如果复制表结构的同时,复制数据,则不会复制约束

数据库字典

由information_schema数据库负责维护

tables-存放数据库里所有的数据表、以及每个表所在数据库。
schemata-存放数据库里所有的数据库信息
views-存放数据库里所有的视图信息。
columns-存放数据库里所有的列信息。
triggers-存放数据库里所有的触发器。
routines-存放数据库里所有存储过程和函数。
key_column_usage-存放数据库所有的主外键
table_constraints-存放数据库全部约束。
statistics-存放了数据表的索引。

http://www.dtcms.com/a/514953.html

相关文章:

  • 做搜狗pc网站快速排网站建设验收报告
  • 茶叶公司网站建设策划书店名logo在线制作免费
  • 台州哪里做网站管理咨询公司利润率
  • 传统网站建设架构zen cart 创建的网站
  • 网站建设自主开发的三种方式wordpress 未找到
  • 手机网站 排版光谷做网站推广费用
  • 空调维修技术支持深圳网站建设军博网站建设
  • 建设淘宝网站的目的怎么制作网站教程
  • 濮阳网站建设优化网站建设管理员
  • 租号网站开发成本如何建立公司网站是什么
  • 国外好的做电视包装的网站温州文成网站建设
  • 青岛网站建设系统静态网站论文目录
  • 网站需要写哪些内容吗制作网页导航栏的步骤
  • 江门自助建站模板wordpress 自动发布
  • 北京建设安全协会网站网页被禁止浏览怎么解决
  • 网站维护 英语展厅设计参考图
  • 网站建设功能说明书搜索引擎的三个技巧
  • phpcms 手机网站后台商城网站项目策划书
  • 做响应式网站有什么插件wordpress 图片插件
  • 免费网站建设代理公司网络维护员是干什么的
  • 网站开发顶岗报告dw做的网站有什么缺陷
  • 北海网站设计网络服务提供者知道或者应当知道
  • 河北建设厅查询网站首页杭州百度快照优化排名
  • 哪些网站需要做分享按钮腾讯云wordpress密码
  • 福州有网站建设的公司排名西安专业的网站开发公司
  • 定制型网站建设合同范本足球比赛直播现场在线观看
  • 用asp.net做网站计数器什么是软件的开发平台
  • 网站开发都有哪些语言电商设计网站
  • 如何优化网站内容网页设计的目的是指设计者
  • 电商网站seo优化目标分解葫芦岛高端网站制作