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

公司网站建设的步骤北京装修公司排名十强

公司网站建设的步骤,北京装修公司排名十强,百度个人中心登录,网页搜索MySQL 使用全教程 介绍 MySQL 是一种广泛使用的开源关系型数据库管理系统(Relational Database Management System),它基于 Structured Query Language(SQL)进行数据管理,允许用户存储、检索、更新和删除数据库中的数据。通过提供…

MySQL 使用全教程

介绍

MySQL 是一种广泛使用的开源关系型数据库管理系统(Relational Database Management System),它基于 Structured Query Language(SQL)进行数据管理,允许用户存储、检索、更新和删除数据库中的数据。通过提供高性能、可扩展性以及可靠性,MySQL 被广泛应用于各种规模的数据驱动网站和应用,支持多线程、多用户操作,并能够处理大型数据库,是构建动态网站和应用程序的重要后端组件。

一个关系型数据库由一个或数个表格组成,如下所示的一个表格


    name ▼ 键            ▼ 列(col)
┌┈┈┈┈┬┈┈┈┈┈┈┈┈┬┈┈┈┈┈┈┬┈┈┈┈┈┈┈┐
id ┆ name   ┆ uid  ┆ level ┆  ◀ 表头header
├┈┈┈┈┼┈┈┈┈┈┈┈┈┤┈┈┈┈┈┈┤┈┈┈┈┈┈┈┤
1 ┆ mysql  ┆ 03├┈┈┈┈┼┈┈┈┈┈┈┈┈┤┈┈┈┈┈┈┤┈┈┈┈┈┈┈┤
2 ┆ redis  ┆ 121     ┆  ◀ 行 row
└┈┈┈┈┴┈┈┈┈┈┈┈┈┴┈┈┈┈┈┈┴┈┈┈┈┈┈┈┘
    redis ▲ 值

  • 表头(header) 每一列的名称
  • 列(col) 具有相同数据类型的数据的集合
  • 行(row) 每一行用来描述某个人/物的具体信息
  • 值(value) 行的具体信息,每个值与该列数据类型相同
  • 键(key) 用来识别某个特定的人/物的方法,有唯一性

登录 MySQL

# 默认用户名<root>,-p 是密码,
# ⚠️参数后面不需要空格
mysql -h 127.0.0.1 -u <用户名> -p<密码>
mysql -D 数据库名 -h 主机名 -u 用户名 -p
mysql -h <host> -P <端口号> -u <user> -p [db_name]
mysql -h <host> -u <user> -p [db_name]

常用的

数据库 Database
:-:-
CREATE DATABASE db ;创建数据库
SHOW DATABASES;列出数据库
USE db;切换到数据库
CONNECT db ;切换到数据库
DROP DATABASE db;删除数据库
表 Table
:-:-
SHOW TABLES;列出当前数据库的表
SHOW FIELDS FROM t;表的列表字段
DESC t;显示表格结构
SHOW CREATE TABLEt;显示创建表sql
TRUNCATE TABLEt;删除表中的所有数据
DROP TABLEt;删除表格
Proccess
:-:-
show processlist;列出进程
kill pid;杀死进程

查看 MySQL 信息

# 显示当前mysql的version的各种信息
mysql> status;
# 显示当前mysql的version信息
mysql> select version(); 
# 查看 MySQL 端口号
mysql> show global variables like 'port';

退出 MySQL 会话

mysql> exit 

退出 quit;\q; 一样的效果

备份

创建备份

mysqldump -u user -p db_name > db.sql

导出不带架构的数据库

mysqldump -u user -p db_name --no-data=true --add-drop-table=false > db.sql

恢复备份

mysql -u user -p db_name < db.sql

MySQL 示例

管理表格

创建一个包含三列的新表

CREATE TABLE t (
    id    INT,
    name  VARCHAR DEFAULT NOT NULL,
    price INT DEFAULT 0
    PRIMARY KEY(id)
);

从数据库中删除表 t

DROP TABLE t ;

向表中添加新列

ALTER TABLE t ADD column;

从表中删除列 c

ALTER TABLE t DROP COLUMN c ;

添加约束

ALTER TABLE t ADD constraint;

删除约束

ALTER TABLE t DROP constraint;

将表从 t1 重命名为 t2

ALTER TABLE t1 RENAME TO t2;

将列 c1 重命名为 c2

ALTER TABLE t1 CHANGE c1 c2 datatype;
ALTER TABLE table_name RENAME COLUMN c1 TO c2;

将列 c1 的数据类型改为 datatype

ALTER TABLE t1 MODIFY c1 datatype;

删除表中的所有数据

TRUNCATE TABLE t;

从表中查询数据

从表中查询列 c1、c2 中的数据

SELECT c1, c2 FROM t

查询表 t 中的所有行和列

SELECT * FROM t

查询数据并使用条件筛选行

SELECT c1, c2 FROM t
WHERE condition

查询表中的不同行

SELECT DISTINCT c1 FROM t
WHERE condition

按升序或降序对结果集排序

SELECT c1, c2 FROM t
ORDER BY c1 ASC [DESC]

跳过行的偏移并返回下 n 行

SELECT c1, c2 FROM t
ORDER BY c1 
LIMIT n OFFSET offset

使用聚合函数对行进行分组

SELECT c1, aggregate(c2)
FROM t
GROUP BY c1

使用 HAVING 子句筛选组

SELECT c1, aggregate(c2)
FROM t
GROUP BY c1
HAVING condition

从多个表查询

内部连接 t1 和 t2

SELECT c1, c2 
FROM t1
INNER JOIN t2 ON condition

左连接t1和t1

SELECT c1, c2 
FROM t1
LEFT JOIN t2 ON condition

右连接 t1 和 t2

SELECT c1, c2 
FROM t1
RIGHT JOIN t2 ON condition

执行完全外部连接

SELECT c1, c2 
FROM t1
FULL OUTER JOIN t2 ON condition

生成表中行的笛卡尔积

SELECT c1, c2 
FROM t1
CROSS JOIN t2

执行交叉连接的另一种方法

SELECT c1, c2 
FROM t1, t2

使用 INNER Join 子句将 t1 连接到自身

SELECT c1, c2
FROM t1 A
INNER JOIN t1 B ON condition

使用 SQL 运算符,合并两个查询中的行

SELECT c1, c2 FROM t1
UNION [ALL]
SELECT c1, c2 FROM t2

返回两个查询的交集

SELECT c1, c2 FROM t1
INTERSECT
SELECT c1, c2 FROM t2

从另一个结果集中减去一个结果集

SELECT c1, c2 FROM t1
MINUS
SELECT c1, c2 FROM t2

使用模式匹配 % 查询行_

SELECT c1, c2 FROM t1
WHERE c1 [NOT] LIKE pattern

查询列表中的行

SELECT c1, c2 FROM t
WHERE c1 [NOT] IN value_list

查询两个值之间的行

SELECT c1, c2 FROM t
WHERE  c1 BETWEEN low AND high

检查表中的值是否为 NULL

SELECT c1, c2 FROM t
WHERE  c1 IS [NOT] NULL

使用 SQL 约束

将 c1 和 c2 设置为主键

CREATE TABLE t(
    c1 INT, c2 INT, c3 VARCHAR,
    PRIMARY KEY (c1,c2)
);

将 c2 列设置为外键

CREATE TABLE t1(
    c1 INT PRIMARY KEY,  
    c2 INT,
    FOREIGN KEY (c2) REFERENCES t2(c2)
);

使列 c1 和 c2 中的值唯一

CREATE TABLE t(
    c1 INT, c2 INT,
    UNIQUE(c1,c2)
);

确保 c1>0 和 c1>=c2 中的值

CREATE TABLE t(
  c1 INT, c2 INT,
  CHECK(c1> 0 AND c1 >= c2)
);

c2 列中的设置值不为 NULL

CREATE TABLE t(
     c1 INT PRIMARY KEY,
     c2 VARCHAR NOT NULL
);

修改数据

在表格中插入一行

INSERT INTO t(column_list)
VALUES(value_list);

在表格中插入多行

INSERT INTO t(column_list)
VALUES (value_list), 
       (value_list),;

将行从 t2 插入 t1

INSERT INTO t1(column_list)
SELECT column_list
FROM t2;

更新列 c1 中所有行的新值

UPDATE t
SET c1 = new_value;

更新列 c1、c2 中与条件匹配的值

UPDATE t
SET c1 = new_value, 
        c2 = new_value
WHERE condition;

删除表中的所有数据

DELETE FROM t;

删除表中的行子集

DELETE FROM t
WHERE condition;

管理视图

创建由 c1 和 c2 组成的新视图

CREATE VIEW v(c1,c2) 
AS
SELECT c1, c2
FROM t;

使用选中选项创建新视图

CREATE VIEW v(c1,c2) 
AS
SELECT c1, c2
FROM t;
WITH [CASCADED | LOCAL] CHECK OPTION;

创建递归视图

CREATE RECURSIVE VIEW v 
AS
select-statement -- anchor part
UNION [ALL]
select-statement; -- recursive part

创建临时视图

CREATE TEMPORARY VIEW v 
AS
SELECT c1, c2
FROM t;

删除视图

DROP VIEW view_name;

管理触发器

创建或修改触发器

CREATE OR MODIFY TRIGGER trigger_name
WHEN EVENT
ON table_name TRIGGER_TYPE
EXECUTE stored_procedure;
WHEN
:-:-
BEFORE在事件发生前调用
AFTER事件发生后调用
EVENT
:-:-
INSERT为INSERT调用
UPDATE调用UPDATE
DELETE调用DELETE
TRIGGER_TYPE
:-:-
FOR EACH ROW-
FOR EACH STATEMENT-

管理索引

在表 t 的 c1 和 c2 上创建索引

CREATE INDEX idx_name 
ON t(c1,c2);

在表 t 的 c3、c4 上创建唯一索引

CREATE UNIQUE INDEX idx_name
ON t(c3,c4)

删除索引

DROP INDEX idx_name ON t;

MySQL 数据类型

Strings

--
CHARString (0 - 255)
VARCHARString (0 - 255)
TINYTEXTString (0 - 255)
TEXTString (0 - 65535)
BLOBString (0 - 65535)
MEDIUMTEXTString (0 - 16777215)
MEDIUMBLOBString (0 - 16777215)
LONGTEXTString (0 - 429496­7295)
LONGBLOBString (0 - 429496­7295)
ENUMOne of preset options
SETSelection of preset options

Date & time

Data TypeFormat
DATEyyyy-MM-dd
TIMEhh:mm:ss
DATETIMEyyyy-MM-dd hh:mm:ss
TIMESTAMPyyyy-MM-dd hh:mm:ss
YEARyyyy

Numeric

--
TINYINT xInteger (-128 to 127)
SMALLINT xInteger (-32768 to 32767)
MEDIUMINT xInteger (-8388608 to 8388607)
INT xInteger (-2147­483648 to 214748­3647)
BIGINT xInteger (-9223­372­036­854­775808 to 922337­203­685­477­5807)
FLOATDecimal (precise to 23 digits)
DOUBLEDecimal (24 to 53 digits)
DECIMAL"­DOU­BLE­" stored as string

函数

聚合函数

函数解释
SUM()计算一列值的总和
AVG()计算一列值的平均值
COUNT()计算行数,可选择性地忽略NULL值
MAX()找出一列的最大值
MIN()找出一列的最小值

数学函数

函数解释示例语法结果
ABS(x)返回数值的绝对值ABS(-5)5
ROUND(x,y)四舍五入到指定的小数位数,y为小数位数,默认为0ROUND(3.1415,2)3.14
FLOOR(x)向下取整至最接近的整数FLOOR(3.7)3
CEIL(x)向上取整至最接近的整数CEIL(3.3)4
SQRT(x)返回一个数的平方根SQRT(16)4
MOD(x,y)返回x除以y的余数MOD(10,3)1
RAND([seed])返回0到1之间的随机数,可选种子值RAND()RAND(123)0.345...

日期和时间函数

函数解释
NOW()返回当前日期和时间
CURDATE()返回当前日期
CURTIME()返回当前时间
DATE_FORMAT()格式化日期时间输出
DATEDIFF()计算两个日期之间相差的天数
STR_TO_DATE()将字符串转换为日期格式

字符串函数

函数解释示例语法结果
CONCAT(s1,s2,...)连接两个或更多字符串CONCAT('Hello, ','World!')'Hello, World!'
LOWER(str)转换为小写LOWER('HELLO')'hello'
UPPER(str)转换为大写UPPER('world')'WORLD'
TRIM(str)去除字符串两端空格TRIM(' Hello ')'Hello'
LEFT(str,len)提取字符串左侧的若干字符LEFT('Hello', 3)'Hel'
RIGHT(str,len)提取字符串右侧的若干字符RIGHT('Hello', 2)'lo'
SUBSTR(str,pos,len)提取字符串中的一部分SUBSTR('Hello', 2, 3)'ell'
REPLACE(str,from_str,to_str)替换字符串中的部分文本REPLACE('Hello', 'l', 'L')'HeLLo'

高级函数

函数解释示例语法结果
BIN(x)返回 x 的二进制编码,x 为十进制数。BIN(2)10
BINARY(s)将字符串 s 转换为二进制字符串。BINARY 'RUNOOB''RUNOOB'(显示效果,实际存储为二进制)
CASE复合条件函数,根据条件返回不同结果。CASE WHEN 1 > 0 THEN '1 > 0' WHEN 2 > 0 THEN '2 > 0' ELSE '3 > 0' END'1 > 0'
CAST(x AS type)转换数据类型。CAST('2017-08-29' AS DATE)2017-08-29
COALESCE(expr1, expr2, ..., expr_n)返回第一个非空表达式的值。COALESCE(NULL, NULL, 'runoob.com', NULL, 'google.com')'runoob.com'
CONNECTION_ID()返回当前连接的唯一ID。CONNECTION_ID()4292835(示例值)
CONV(x, f1, f2)将 f1 进制数转换为 f2 进制数。CONV(15, 10, 2)1111
CONVERT(s USING cs)转换字符串 s 的字符集为 cs。CHARSET(CONVERT('ABC' USING gbk))gbk
CURRENT_USER()返回当前用户。CURRENT_USER()guest@%
DATABASE()返回当前数据库名。DATABASE()runoob
IF(expr, v1, v2)条件表达式,expr 为真则 v1,否则 v2。IF(1 > 0, '正确', '错误')'正确'
IFNULL(v1, v2)如果 v1 不为 NULL,则返回 v1,否则返回 v2。IFNULL(NULL, 'Hello Word')'Hello Word'
ISNULL(expression)判断表达式是否为 NULL。ISNULL(NULL)1
LAST_INSERT_ID()返回最近生成的 AUTO_INCREMENT 值。LAST_INSERT_ID()6(示例值)
NULLIF(expr1, expr2)若 expr1 等于 expr2,则返回 NULL,否则返回 expr1。NULLIF(25, 25)NULL
http://www.hyszgw.com/news/48506.html

相关文章:

  • 佛山建设局网站百度商桥怎么接网站
  • 如何进行企业营销型网站建设软件网站模版
  • 服务之家网站推广网站建设毕业设计报告书
  • 怎么样学做网站湖北网官网
  • 网页网站开发公司百度百家官网入口
  • 杭州网站设计哪家公司好珠海中企网站建设公司
  • 毕业设计做网站做什么好WordPress海报
  • 网站建设宣传语网站开发与应用论文百度文库
  • 深圳企业医疗网站建设wordpress 注册方式
  • 如何查网站的备案信息响应式网站有什么好处
  • 个人网站做装修可以吗wordpress 会员主页
  • 找人做淘宝网站需要多少钱宁波seo推广推荐
  • 如何知道一个网站是谁做的什么是网站建设的重点
  • 网站开发推广招聘263企业邮箱怎么注册
  • 技术支持 创思佳网站建设wordpress 账号 有效期
  • 网站登录账号密码保存在哪里宿松县住房和城乡建设局网站
  • 关于网站制作报价浙江省建设协会网站首页
  • 网站制作 合同cad线下培训班
  • 有哪些做拎包入住的网站网站建设与维护的试卷
  • 网站入口首页如何做网络营销推广ppt
  • 咸阳网站开发公司电话更加精准高效的措施
  • 外行做网站广州做网站优化公司报价
  • 网站开发需求清单做ppt常用的网站有哪些
  • 顺义做网站的厂家新余网络推广
  • 安徽工业大学两学一做网站网站建设行业的分析
  • 郑州社交网站开发电话卡代理平台
  • 域名注册好了怎么弄网站手机大型网站
  • thinkphp 门户网站网站开发前景怎么样
  • 淘宝联盟如何建设个人网站单页网站怎么制作教程
  • 网页游戏网站知乎网络建站公司如何做市场