选择适合您网站的 SQL 托管:MS SQL Server、Oracle、MySQL

小万哥
• 阅读 91

SQL托管

如果您希望您的网站能够存储和检索数据,您的Web服务器应该能够访问使用SQL语言的数据库系统。以下是一些常见的SQL托管选项:

MS SQL Server

Microsoft的SQL Server是一个流行的数据库软件,适用于具有高流量的数据库驱动网站。它是一个强大、稳健且功能齐全的SQL数据库系统。

Oracle

Oracle也是一种用于高流量数据库驱动网站的流行数据库软件。它提供了强大的功能和性能,适用于大型企业级应用。

MySQL

MySQL是一种流行的开源数据库软件,适用于各种网站。它是一个强大、稳健且功能齐全的SQL数据库系统,通常被用作对昂贵的Microsoft SQL Server和Oracle解决方案的廉价替代。

MS Access

Microsoft Access通常在网站只需要一个简单的数据库时被考虑。然而,它不适用于非常高流量的情况,并且相较于MySQL、SQL Server或Oracle而言,功能相对较弱。

SQL托管选择

自托管

在某些情况下,您可能选择自行托管数据库,这意味着您需要自己配置、管理和维护数据库服务器。这对于对数据库有高度控制需求的人来说是一个选项。

云托管

许多云服务提供商(如AWS、Azure、Google Cloud等)提供托管数据库的服务。这些服务允许您在云中轻松部署和管理数据库,无需担心硬件和基础设施细节。

ISP提供的SQL托管计划

如果您的Web服务器由互联网服务提供商(ISP)托管,通常他们也提供SQL托管计划。这些计划可以根据您的需求选择不同的数据库系统,并提供简化的配置和管理。

选择合适的SQL托管解决方案取决于您的需求、预算和技术要求。无论选择哪种方式,都需要确保数据库系统能够满足网站的性能和安全性要求。

SQL数据类型对于MySQL、SQL Server和MS Access

数据库表中的每一列都需要有一个名称和一个数据类型。在创建表时,SQL开发人员必须决定每个列内存储什么类型的数据。下面是MySQL、SQL Server和MS Access中一些常见的SQL数据类型。

MySQL数据类型(版本8.0)

字符串数据类型

  • CHAR(size): 固定长度字符串,最大长度为255个字符。
  • VARCHAR(size): 可变长度字符串,最大长度为65535个字符。
  • BINARY(size): 等于CHAR(),但存储二进制字节字符串。
  • VARBINARY(size): 等于VARCHAR(),但存储二进制字节字符串。
  • TINYBLOB: 用于BLOB(二进制大对象),最大长度:255字节。
  • TINYTEXT: 保存最大长度为255个字符的字符串。
  • TEXT(size): 保存最大长度为65,535字节的字符串。
  • BLOB(size): 用于BLOB(二进制大对象),最大可保存65,535字节的数据。
  • MEDIUMTEXT: 保存最大长度为16,777,215个字符的字符串。
  • MEDIUMBLOB: 用于BLOB,最大可保存16,777,215字节的数据。
  • LONGTEXT: 保存最大长度为4,294,967,295个字符的字符串。
  • LONGBLOB: 用于BLOB,最大可保存4,294,967,295字节的数据。
  • ENUM(val1, val2, val3, ...): 只能有一个值的字符串对象,值从可能的列表中选择。
  • SET(val1, val2, val3, ...): 字符串对象,可以有0个或更多个值,从可能值的列表中选择。

数字数据类型

  • BIT(size): 位值类型,每个值的位数在size中指定。
  • TINYINT(size): 非常小的整数,签名范围是-128到127,无符号范围是0到255。
  • BOOL/BOOLEAN: 零被视为假,非零值被视为真。
  • SMALLINT(size): 小整数,签名范围是-32768到32767,无符号范围是0到65535。
  • MEDIUMINT(size): 中整数,签名范围是-8388608到8388607,无符号范围是0到16777215。
  • INT(size): 中整数,签名范围是-2147483648到2147483647,无符号范围是0到4294967295。
  • INTEGER(size): 等同于INT(size)
  • BIGINT(size): 大整数,签名范围是-9223372036854775808到9223372036854775807,无符号范围是0到18446744073709551615。
  • FLOAT(size, d): 浮点数,已弃用。
  • FLOAT(p): 浮点数,p值确定在结果数据类型中使用FLOAT还是DOUBLE。
  • DOUBLE(size, d): 普通大小的浮点数。
  • DOUBLE PRECISION(size, d): 等同于DOUBLE(size, d)
  • DECIMAL(size, d)/DEC(size, d): 精确的定点数。

日期和时间数据类型

  • DATE: 日期,格式:YYYY-MM-DD,范围从'1000-01-01'到'9999-12-31'。
  • DATETIME(fsp): 日期和时间组合,格式:YYYY-MM-DD hh:mm:ss,范围从'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。
  • TIMESTAMP(fsp): 时间戳,存储为自Unix时代('1970-01-01 00:00:00')以来的秒数。

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎 点赞、收藏、关注

点赞
收藏
评论区
推荐文章
Wesley13 Wesley13
2年前
SQL注入之PHP
SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。具体来说,它是利用现有应用程序,将(恶意的)SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。比如先前的很多影视网站泄
Easter79 Easter79
2年前
sql注入
反引号是个比较特别的字符,下面记录下怎么利用0x00SQL注入反引号可利用在分隔符及注释作用,不过使用范围只于表名、数据库名、字段名、起别名这些场景,下面具体说下1)表名payload:select\from\users\whereuser\_id1limit0,1;!(https://o
Stella981 Stella981
2年前
Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''
Stella981 Stella981
2年前
Mycat分布式架构之Mycat入门到精通
支持SQL92标准支持MySQL、Oracle、DB2、SQLServer、PostgreSQL等DB的常见SQL语法遵守Mysql原生协议,跨语言,跨平台,跨数据库的通用中间件代理。基于心跳的自动故障切换,支持读写分离,支持MySQL主从,以及galeracluster集群。支持GaleraforMySQL集群,Percon
Easter79 Easter79
2年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Stella981 Stella981
2年前
Bypass ngx_lua_waf SQL注入防御(多姿势)
0x00前言ngx\_lua\_waf是一款基于ngx\_lua的web应用防火墙,使用简单,高性能、轻量级。默认防御规则在wafconf目录中,摘录几条核心的SQL注入防御规则:select.(from|limit)(?:(union(.?)select))(?:from\Winformation_schema\W)这边
Wesley13 Wesley13
2年前
C++ 通用数据库操作之SOCI
简介SOCI是用C编写的数据库访问库,使人将SQL查询嵌入常规C代码中,而完全位于标准C中。这个想法是为C程序员提供一种以最自然,最直观的方式访问SQL数据库的方法。如果您发现现有库太难满足您的需求或分散注意力,那么SOCI可能是一个不错的选择。当前支持的后端:DB2(https://www.osch
Stella981 Stella981
2年前
Hibernate纯sql查询结果和该sql在数据库直接查询结果不一致
问题:今天在做一个查询的时候发现一个问题,我先在数据库实现了我需要的sql,然后我在代码中代码:selectdistinctd.id,d.name,COALESCE(c.count_num,0),COALESCE(c.count_fix,0),COALESCE(c
小万哥 小万哥
4个月前
SQL 日期处理和视图创建:常见数据类型、示例查询和防范 SQL 注入方法
SQL处理日期在数据库操作中,处理日期是一个关键的方面。确保插入的日期格式与数据库中日期列的格式匹配至关重要。以下是一些常见的SQL日期数据类型和处理方法。SQL日期数据类型MySQL日期数据类型DATE格式为YYYYMMDDDATETIME格式为YYYY