MySQL数据类型--日期和时间类型

2023-05-16


  • MySQL中的多种时间和格式数据类型

日期和时间类型是为了方便在数据库中存储日期和时间而设计的。MySQL中有多种表示日期和时间的数据类型。

其中,year类型表示时间,date类型表示日期,time类型表示时间,datetime和timestamp表示日期和时间。实际情况,最后2种使用的比较多。

具体的日期和时间类型如下:



关于上图的解释:

1,每种日期和时间类型都有一个有效范围。如果插入的值超过了这个范围,系统就会报错,并将0值插入到数据库中。

2,不同的日期与时间类型有不同的0值,上表中已经详细的列出。


  • OK,现在来仔细的整理下上面说到的几种类型:

  • year类型

year类型使用1个字节来表示年份,MySQL中以YYYY的形式来显示year类型的值

给year类型的字段赋值的表示方法如下:

1,使用4位字符串和数字表示。其范围从1901~~2155。输入格式为'YYYY'或YYYY。举个例子,输入‘2008’或者2008,可直接保存2008。如果超过了范围,就会插入0000。

2,使用2位字符串表示。‘00’~~‘69’转换为2000~~2069,‘70’~~‘99’转换为1970~1999。举个例子,输入‘35’,year值会转换成2035,输入‘90’,year值会转换成1990。‘0’和‘00’效果一样。

3,使用2位数字表示。1~~69转换为2001~~2069,70~~99转换为1970~~1999。不举例子了,注意,2位数字和2位字符串是不一样的。如果插入0,转换后的year值不是2000,而是0000。

OK,针对上面的例子,我们来实际操作下数据库。

CREATE TABLE `linkinframe`.`test` (
  `id` INT NOT NULL,
  `a` YEAR NULL,
  PRIMARY KEY (`id`));
现在往该表中插入几条数据:
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('1', 1989);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('2', 1990);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('3', 1900);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('4', 2156);

OK,现在数据库显示如下:



year类型是使用总结:

1,顾名思义,我们一般用year类型来表示年份,所以在对该字段进行相关操作的时候,最好使用4位字符串或者数字表示,不要使用2位的字符串和数字。

2,有的时候可能会插入0或者‘0’。这里要严格区分0和‘0’,如果向year类型的字段插入0,存入该字段的年份是0000;如果向year类型的字段插入‘0’,存入的年份是2000。

当然字符串‘0’和‘00’和‘000’是一样的效果,但是‘0000’效果不一样。因为如果是4个0的话就使用了year类型赋值的第一种方式,也就是超过了year类型的范围,插入了0。

关于这点这里来举一个实际的例子吧。

建表语句如下:
CREATE TABLE `linkinframe`.`test` (
  `id` INT NOT NULL,
  `a` YEAR NULL,
  PRIMARY KEY (`id`));
现在往该表中插入几条数据:
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('1', 0);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('2', 00);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('3', 000);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('4', 0000);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('5', '0');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('6', '00');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('7', '000');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('8', '0000');

OK,现在数据库显示如下:



  • time类型

time类型使用3个字节来表示时间。MySQL中以HH:MM:SS的形式显示Time类型的值。其中,HH表示时;MM表示分,取值范围为0~~59;SS表示秒,取值范围是0~~59

Time类型的范围可以从‘-838:59:59’~~‘838:59:59’。虽然,小时的范围是0~~23,但是为了表示某种特殊需要的时间间隔,将Time类型的范围扩大了。而且还支持了负值。

Time类型的字段赋值的表示方法如下:

1,‘D HH:MM:SS’格式的字符串表示。其中,D表示天数,取值范围是0~~34。保存时,小时的值等于(D*24+HH)。举个例子,输入‘2 11:30:50’,Time类型会转换为59:30:50。
当然。输入时可以不严格按照这个格式,也可以是‘HH:MM:SS’,'HH:MM','D HH:MM','D HH','SS'等形式。举个例子,输入‘30’,Time类型会自动转换为00:00:30。

2,‘HHMMSS’格式的字符串或HHMMSS格式的数值表示,例如,输入‘123456’,Time类型会转换成12:34:56;输入123456,Time类型会转换成12:34:56。如果输入0或者‘0’,那么TIME类型会转换为0000:00:00。

3,使用current_time或者current_time()或者now()输入当前系统时间。

OK,现在我们来实际操作下数据库中Time类型。

建表语句如下:

CREATE TABLE `linkinframe`.`test` (
  `id` INT NOT NULL,
  `a` TIME NULL,
  PRIMARY KEY (`id`));
现在往该表中插入几条数据:
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('1', '1 01:50:50');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('2', '01:50:50');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('3', '50:05');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('4', '1 05:05');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('5', '59');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('6', '66');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('7', '123456');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('8', 123456);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('9', 0);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('10', '0');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('11', now());
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('12', current_time);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('13', current_time());
数据库显示如下:




关于Time类型的总结:

1,一个合法的Time值,如果超出了Time的范围,将被裁为范围最接近的端点。举个例子,‘880:00:00’将转换为838:59:59。

2,无效的Time值,在命令行下是无法被插入到表中的。举个例子,我在这里乱输入一个字符串的值,数据库取值28:00:00成功的插入进去啦,MySQL中显示如下:

INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('17', '1 4 4 4 4 65:65')	
控制台显示如下:1 row(s) affected, 1 warning(s): 1265 Data truncated for column 'a' at row 1。所以在使用Time类型用来存储时间的时候,最好对格式进行一下校验,不要随便的格式胡乱的输入。

3,如果插入的Time值是无效的,系统会提示报错,即使这个无效值被插入到表中了,其值也会被转换为00:00:00。举个例子,

INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('19', '999999');
数据库中取值00:00:00来做插入

4,Time类型专门用来存储时间数据,而且只占3个字节,所以如果只需要记录时间,选择Time类型是最合适的


  • Date类型

date类型使用4个字节来表示日期。MySQL中是以YYYY-MM-DD的形式显示date类型的值
其中,YYYY表示年,MM表示月,DD表示日。date类型的范围可以从‘1000-01-01’~~‘9999-12-31’。

给DATE类型的字段赋值的表示方法如下:

1,‘YYYY-MM-DD’或‘YYYYMMDD’格式的字符串表示,这种方式可以表达的范围是‘1000-01-01’~‘9999-12-31’。
举个例子,比如现在我输入‘4008-2-8‘,date类型将转换为4008-02-08;输入’40080308‘,date类型将转换为4008-03-08。

2,当然,MySQL中还支持一些不严格的语法格式,任何标点都可以用来做间隔符。如’YYYY/MM/DD‘,’YYYY@MM@DD‘,’YYYY.MM.DD‘等分隔形式。
举个例子,输入’2011.3.8‘,date类型将转换为2011-03-08。

3,’YY-MM-DD‘或者’YYMMDD‘格式的字符串表示,其中’YY‘的取值,’00‘~~’69‘转换为2000~~2069,’70‘~~’99‘转换为1970~~1999。与year类型类似。
举个例子,比如现在我输入’35-01-02‘,date类型将转换为2035-01-02;输入’800102‘,date类型将转换为1980-01-02。

4,同样的,MySQL中也支持一些不严格的语法格式,比如’YY/MM/DD‘,’YY@MM@DD‘,’YY.MM.DD’等分隔形式。例如,输入‘89@3@8’,date类型将转换为1989-03-08。

5,YYYYMMDD或YYMMDD格式的数字表示。其中,‘YY’的取值,‘00’~~‘69’转换为2000~~2069,‘70’~~‘99’转换为1970~~1999。与year类型类似。
举个例子,比如现在我输入20080808,date类型将转换为2008-08-08;输入790808,date类型将转换为1979-08-08;输入0,那么date类型会转化为0000-00-00。

6,使用current_date或now()来输入当前系统时间


OK,现在我们来实际操作下数据库中的date类型。

建表语句如下:
CREATE TABLE `linkinframe`.`test` (
  `id` INT NOT NULL,
  `a` DATE NULL,
  PRIMARY KEY (`id`));
现在往表中插入几条数据:
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('1', '2008-08-08');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('2', '20080808');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('3', '2008@08@08');
-- 格式出错,所以插入0000-00-00
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('4', '2008#0808');
-- 格式没错,但是小于了date类型的最小值1000,但是数据库还是插进去了,我晕
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('5', '0999-08-08');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('6', '690808');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('7', '700808');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('8', 690808);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('9', 700808);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('10', '0');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('11', 0);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('12', now());
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('13', current_date);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('14', current_date());
OK,数据库显示如下:



关于date类型的总结:

1,date类型值战友4个字节,如果只需要记录日期,选择date类型是最合适的。

2,虽然MySQL支持的DATA类型的一些不严格的语法格式,但是,在实际应用中,最好还是选择标准形式。日期中使用“-”做分隔符,时间用“:”做分隔符,然后中间用空格隔开。

比如下面格式:2016-03-17 16:27:55。当然如果有特殊需要,可以使用“@”,“*”等特殊字符做分隔符。


  • Datetime类型

datetime类型使用8个字节来表示日期和时间。MySQL中以‘YYYY-MM-DD HH:MM:SS’的形式来显示dateTime类型的值
从其形式上可以看出,dateTime类型可以直接用date类型和Time类型组合而成。


给dateTime类型的字段赋值的表示方法如下:

1,‘YYYY-MM-DD HH:MM:SS’或‘YYYYMMDDHHMMSS’格式的字符串表示。这种方式可以表达的范围是‘1000-01-01 00:00:00’~~‘9999-12-31 23:59:59’。
举个例子,比如我现在输入‘2008-08-08 08:08:08’,dateTime类型转换为2008-08-08 08:08:08,输入‘20080808080808’,同样转换为2008-08-08 08:08:08。

2,MySQL中还支持一些不严格的语法格式,任何的标点都可以用来做间隔符。情况与date类型相同,而且时间部分也可以使用任意的分隔符隔开,这与Time类型不同,Time类型只能用‘:’隔开呢。
举个例子,比如我现在输入‘2008@08@08 08*08*08’,数据库中dateTime类型统一转换为2008-08-08 08:08:08。

3,‘YY-MM-DD HH:MM:SS’或‘YYMMDDHHMMSS’格式的字符串表示。其中‘YY’的取值,‘00’~~‘69’转换为2000~~2069,‘70’~~‘99’转换为1970~~1999。与year型和date型相同。
举个例子,比如我现在输入‘69-01-01 11:11:11’,数据库中插入2069-01-01 11:11:11;比如我现在输入‘70-01-01 11:11:11’,数据库中插入1970-01-01 11:11:11。

4,当然这种格式化的省略YY的简写也是支持一些不严格的语法格式的,比如用‘@’,‘*’来做间隔符。

5,使用now()来输入当前系统日期和时间。


OK,现在我们来实际操作下数据库中德尔dateTime类型。

建表语句如下:
CREATE TABLE `linkinframe`.`test` (
  `id` INT NOT NULL,
  `a` DATETIME NULL,
  PRIMARY KEY (`id`));
现在我想数据库中插入几条数据:
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('1', '2008-08-08 08:08:08');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('2', '20080808080808');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('3', '2008@08@08 08*08*08');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('4', '69-01-01 11:11:11');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('5', '70-01-01 11:11:11');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('6', 20080808080808);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('7', 690808080808);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('8', 700808080808);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('9', 0);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('10', now());
OK,现在数据库显示如下:





datetime类型总结:

dateTime类型用来记录日期和时间,其作用等价于date类型和Time类型的组合。一个dateTime类型的字段可以用一个date类型的字段和一个time类型的字段代替。但是如果需要同时记录日期和时间,选择dateTime类型是个不错的选择。


  • timestamp类型

timestamp类型使用4个字节来表示日期和时间。timestamp类型的范围是从1970-01-01 08:00:01~~2038-01-19 11:14:07。

MySQL中也是以‘YYYY-MM-DD HH:MM:SS’的形式显示timestamp类型的值。从其形式可以看出,timestamp类型与dateTime类型显示的格式是一样的。

给timestamp类型的字段复制的表示方法基本与dateTime类型相同。值得注意的是,timestamp类型范围比较小,没有dateTime类型的范围那么大。所以输入值时要保证在timestamp类型的有效范围内。


OK,现在我们来实际操作下数据库中timestamp数据类型。

建表语句如下:
CREATE TABLE `linkinframe`.`test` (
  `id` INT NOT NULL,
  `a` TIMESTAMP NULL,
  PRIMARY KEY (`id`));
现在我们往表中插入几条数据:
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('1', '2008-08-08 08:08:08');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('2', '20080808080808');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('3', '2008@08@08 08*08*08');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('4', '69-01-01 11:11:11');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('5', '70-01-01 11:11:11');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('6', 20080808080808);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('7', 690808080808);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('8', 700808080808);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('9', 0);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('10', now());
OK,现在数据库显示如下: 从数据库显示的结果来看,timestamp的范围确实很小的,2069明显的超过了2038,所以数据库插入0。




  • OK,实际使用情景中,我们使用timestamp类型和dateTime类型比较多,这里我们来对比一下

1,先来看下timestamp类型的几种与dateTime类型不同的形式内容如下:
(1.1),使用current_timestamp来输入系统当前日期与时间
(1.2),输入null时,系统会输入系统当前日期与时间
(1.3),无任何输入时,系统会输入null。
资料上面说系统会输入系统当前日期与时间,但是我自己尝试了下,如果输入null的时候,数据库中也是null,郁闷。
OK,现在我们来演示下这种情况。

建表语句和插入的sql语句如下:

CREATE TABLE `linkinframe`.`test` (
  `id` INT NOT NULL,
  `a` TIMESTAMP NULL,
  PRIMARY KEY (`id`));

INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('1', null);
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('2', 'NULL');
INSERT INTO `linkinframe`.`test` (`id`, `a`) VALUES ('3', current_timestamp());
数据库显示如下:


2,timestamp类型还有一个很大的特殊点,就是时间是根据时区来显示的。例如,在东八区插入的timestamp类型为2009-09-30 14:21:25,
在东七区显示时,时间部门就变成了13:21:25,在东九区显示时,时间部门就变成了15:21:25。

3,需要显示日期与时间,timestamp类型能够根据不同地区的时区来转换时间,但是,timestamp类型的范围太小,其最大时间为2038-01-19 11:14:07。
如果插入时间的比这个大,将会出错,我自己实际操作中,数据库插入0000-00-00 00:00:00。所以需要的时间范围比较大,还是选择dateTime类型比较安全。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL数据类型--日期和时间类型 的相关文章

  • 获取直方图数据

    有没有办法在 MySQL 中指定 bin 大小 现在 我正在尝试以下 SQL 查询 select total count total from faults GROUP BY total 生成的数据足够好 但行太多 我需要的是一种将数据分组
  • Hibernate HQL Join 查询 DOT 节点,没有左侧

    我有两个模型类 应用程序 java Entity Table name Application catalog mysqldb XmlRootElement public class Application extends BaseObje
  • 开发 WordPress 管理链接重定向到实时站点

    我正在尝试对我拥有的 WordPress 网站进行新的更改 所以我复制了所有文件并导出到新的开发子域 为子域创建新数据库并从实时站点导入数据库 直播站点 http mysite com http mysite com 开发站点 http d
  • PDO 多查询“SQLSTATE[HY000]:一般错误”

    我仍在学习 PDO 所以我可能会错过一些东西 但基本上我正在尝试将一行插入表中 然后选择生成的 id 我不确定它是否喜欢一个 pdo 语句中的两个查询 这是我用来执行 SQL 的代码 public function ExecuteQuery
  • Session_set_save_handler 未设置

    我在设置 session set save handler 时遇到问题 我将 php ini 配置为 session handler user 这个简单的测试失败了 Define custom session handler if sess
  • 需要 SQL 选择查询帮助

    我的问题类似于SQL选择组查询 https stackoverflow com questions 11407601 sql select group query 但模式发生了变化 我想要不同的结果 如下所述 给定链接的解决方案没有给我正确
  • 如何使用Python的Mysqldb模块?而不是 %s 作为查询参数?

    MySqlDb 是一个很棒的 Python 模块 但有一个部分非常烦人 查询参数如下所示 cursor execute select from Books where isbn s isbn 而已知宇宙中的其他地方 oracle sqlse
  • SELECT COUNT() 与 mysql_num_rows();

    我有一个大表 60 数百万条记录 我正在使用 PHP 脚本来浏览该表 PHP 脚本 带分页 加载速度非常快 因为 表引擎是InnoDB因此SELECT COUNT 非常慢并且mysql num rows 不是一个选项 所以我将总行数 我用来
  • 删除 ibdata1 后 MySQL 表消失了

    几天前 经过一番谷歌搜索后 我发现了这篇文章 我无法再让 mysql 运行了 xampp XAMPP MySQL 意外关闭 https stackoverflow com questions 18022809 xampp mysql shu
  • MySQL 错误 1264:列的值超出范围

    As I SETMySQL 中的 cust fax 表如下所示 cust fax integer 10 NOT NULL 然后我插入这样的值 INSERT INTO database values 3172978990 但随后它说 错误 1
  • mysql 无法向用户授予权限,出现错误:ERROR 1819 (HY000): 您的密码不满足当前策略要求

    我正在将一个新应用程序迁移到包含 MySQL 数据库的生产环境 尝试使用以下命令授予所需权限时 GRANT ALTER CREATE ON MyDB to ThisUser 我收到错误 ERROR 1819 HY000 Your passw
  • 创建表时 MySQL 语法错误

    我正在尝试在 Filemaker gt MySQL 转换脚本中使用此查询 表创建步骤直接从 phpMyAdmin 导出中获取 并添加到 DROP 语句中 DROP TABLE IF EXISTS artifacts CREATE TABLE
  • MySQL 更新具有多个值的查询

    我在数据库中有一个表 其记录如下 match id guess result 125 1 0 130 5 0 233 11 0 125 2 0 我的用户为每场比赛选择一个猜测 我有一个函数可以根据比赛的结果计算猜测的结果 如果猜测正确 结果
  • 使用 Java 连接到 MySql - SSL 连接

    我一直在尝试连接到 MySql 数据库 该数据库使用 ssl 连接与 java 并遇到麻烦 如果任何人可以帮助我 将会有很大的帮助 手动连接MySql 我们使用MySQL Workbench 参数 主机名 test db1 ro xxxxx
  • 用于 Mysql 查询的 FLASK HTML 字段

    你好 Stackoverflow 社区 我是 FLASK 的新手 但是虽然学习曲线非常陡峭 但有一个项目我无法理解 我使用一个非常简单的 HTML 搜索表单 用户在其中输入城市名称 此输入将传递到 Mysql 查询并将输出返回到表中 一切正
  • 复制具有不同列名的 MySQL 表

    我需要将 table1 中与特定列匹配的所有行复制到具有不同列名称的 table2 中 例如 table1 name oldAddressBook table1 的列 name Name Surname Number table2 name
  • 如何复制具有 MySQL 中保留的键和其他结构特征的表?

    如何复制保留键和其他结构特征的表 包括主键 外键和索引 这可以通过单个 MySQL 查询来完成吗 我正在使用 create table newtable as select 但此方法会使所有键和索引丢失 无法使用单个查询来从另一个表复制一个
  • MySQL 连接最新行

    我有两张桌子agents and calls 座席将始终处于一个活动呼叫中 可能有另一个待处理的呼叫分配给某个座席 而该座席尚未应答 我想编写一个查询来测试最新的调用是否按排序dateCreated与代理表中当前活动的呼叫匹配 以下是当前呼
  • 当我在 PHP 中将 print_r() 应用于数组时,为什么会得到“Resource id #4”? [复制]

    这个问题在这里已经有答案了 可能的重复 我如何从 PHP 中的 MySql 响应中 回显 资源 id 6 https stackoverflow com questions 4290108 how do i echo a resource
  • Codeigniter,为MySQL创建表和用户

    我想以编程方式使用 CI 创建数据库和用户 到目前为止 我有这 2 个简单的 MySQL 语句 CREATE DATABASE testdb DEFAULT CHARACTER SET utf8 COLLATE utf8 general c

随机推荐

  • WiFi Direct(WiFi P2P)

    Wi Fi Direct技术是Wi Fi产业链向蓝牙技术发起的挑战 xff0c 它试图完全取代蓝牙 Wi Fi Direct是一种点对点连接技术 xff0c 它可以在两台station之间直接建立tcp ip链接 xff0c 并不需要AP的
  • C++经典面试题(九)

    最近看一些面试题 xff0c 觉得如果自己被问到了 xff0c 并不能很利落的回答出来 一是从来没有这个意识 xff0c 二是没有认真的梳理下 下面对这些题做出分析 xff0c 哈 xff01 个人能力有限 xff0c 其中难免有疏漏 xf
  • 我的大学——学习生活总结

    纪念我终将逝去的青春 大一上學期 專業 1 C語言K amp R amp amp 習題 2 C語言經典習題 3 C語言趣味習題 4 C陷阱与缺陷 5 彙編語言 6 C 43 43 程序設計 7 C 程序設計
  • 基于Python的开源人脸识别库:离线识别率高达99.38%——新开源的用了一下感受一下

    该项目是要构建一款免费 开源 实时 离线的网络 app xff0c 支持组织者使用人脸识别技术或二维码识别所有受邀人员 有了世界上最简单的人脸识别库 xff0c 使用 Python 或命令行 xff0c 即可识别和控制人脸 该库使用 dli
  • 5G智慧医疗十大应用场景,你知道多少?

    来源 xff1a 北京物联网智能技术应用协会 都说5G会改变千行百业 xff0c 其中 xff0c 5G医疗健康就是5G技术在医疗健康行业的一个重要应用领域 随着 5G 正式商用的到来以及与大数据 互联网 43 人工智能 区块链等前沿技术的
  • 全网最详细的排列组合系列算法题整理

    写在前面 LeetCode上面排列组合系列几乎所有题目放在一起整理了一下 面试题 08 07 无重复字符串的排列组合 无重复字符串的排列组合 编写一种方法 xff0c 计算某字符串的所有排列组合 xff0c 字符串每个字符均不相同 示例 输
  • 使用IDEA从git拉取分支

    一 打开IDEA xff0c 进入目录 xff1a File gt New gt Project from Version Control 二 打开git工程 xff0c 进行clone对应的链接 填充对应的链接 三 默认下载的是maste
  • 用了cloudflare后,网站提示Sorry, you have been blocked怎么解决?

    其实cloudflare还是非常智能的 xff0c 但有时候为了安全起见 xff0c 我们在网站后台修改参数的时候会被CF拦截 xff0c 我就遇到了好几次提示Sorry you have been blocked的情况 遇到这种情况后 x
  • 下载网页视频的方法

    随着技术的不断更新 xff0c 现在小视频越来越火 xff0c 有的时候想保存浏览的小视频 xff0c 可不知道如何下载 xff1f 对于一些非专业的视频网站的小视频应该通过浏览器的选项是可以下载和保存的 下面就介绍使用浏览器下载的方法 1
  • tomcat8.0.9的安装

    免安装版的tomcat http download csdn net detail u011731233 7632475 这个解压之后 xff0c 在myeclipse中指定到tomcat目录就可以用了 xff0c 也不用配置环境变量 下载
  • 【多线程/C++】阻塞队列的C++多线程 实现 BlockingQueue

    阻塞队列在存放和获取队列中的数据时需要使用多线程 xff0c 一个线程专门负责向队列中存放元素 xff0c 另一个线程专门从队列中获取元素 也可多开辟跟多的线程进行存取 规范的方法也正是存放和获取队列元素分别在不同的线程中实现 阻塞队列实现
  • Log4J使用详解(整理)

    1 Log4j是什么 Log4j是Apache的一个开源项目 xff0c 通过使用Log4j xff0c 我们可以控制日志信息输送的目的地是控制台 文件 GUI组件 xff0c 甚至是套接口服务器 NT的事件记录器 UNIX Syslog守
  • DelphiXE10.2.3实现线程安全访问数据和对象(四)——实现原子自旋锁的无锁对象池

    无锁对象池与无锁Hash是不同应用场景中使用 xff0c 无锁Hash只是预先创建好Hash表 xff08 当然也可以动态Add xff09 后 xff0c 供调用者通过Key值快速找到保存的数据 xff0c 并读取 xff08 这里就只能
  • init进程详细分析--基于android 10

    init进程详细分析 概述 android设备上电 xff0c 引导程序引导进入boot 通常是uboot xff0c 加载initramfs kernel镜像 xff0c 启动kernel后 xff0c 进入用户态程序 第一个用户空间程序
  • commons-logging的使用

    简介 commons logging是Apache commons类库中的一员 Apache commons类库是一个通用的类库 xff0c 提供了基础的功能 xff0c 比如说commons fileupload xff0c common
  • 年度最理性 AI 分析文章:预测 AI 未来,大部分人陷入了 7 大误区

    来源 xff1a 36氪 概要 xff1a 错误的预测会导致大家对不会发生的事情感到恐惧 为什么在人工智能和机器人的预测上总有人不断犯错呢 xff1f 想着预测未来 xff0c 却一不小心就陷入了yy 近年来图像识别突破 Waymo无人车上
  • slf4j的使用

    OK xff0c 现在我们来使用slf4j 概念 SLF4J xff0c 即简单日志门面 xff08 Simple Logging Facade for Java xff09 xff0c 不是具体的日志解决方案 xff0c 它只服务于各种各
  • Java日志管理最佳实践

    原文出处 xff1a http www ibm com developerworks cn java j lo practicelog 感谢原作者 xff0c 感谢ibm网站 xff0c 里面有好多的精华帖 日志记录是应用程序运行中必不可少
  • MySQL数据类型--浮点数类型和定点数类型

    MySQL中使用浮点数类型和定点数类型来表示小数 浮点数类型包括单精度浮点数 xff08 float型 xff09 和双精度浮点数 xff08 double型 xff09 定点数类型就是decimal型 OK xff0c 现在我们来看看这几
  • MySQL数据类型--日期和时间类型

    MySQL中的多种时间和格式数据类型 日期和时间类型是为了方便在数据库中存储日期和时间而设计的 MySQL中有多种表示日期和时间的数据类型 其中 xff0c year类型表示时间 xff0c date类型表示日期 xff0c time类型表