2.MySQL 创建数据库和表

2.1、创建数据库

CREATE DATABASE 语句用于在 MySQL 中创建数据库。
CREATE DATABASE database_name

为了让 PHP 执行上面的语句,我们必须使用 mysql_query() 函数(用于向 MySQL 连接发送查询或命令)。

2.2、创建表

CREATE TABLE 用于在 MySQL 中创建数据库表。

CREATE TABLE table_name ( column_name1 data_type, column_name2 data_type, column_name3 data_type, .......
);

为了执行此命令,我必须向 mysql_query() 函数添加 CREATE TABLE 语句。

重要事项:在创建表之前,必须首先选择数据库。通过 mysql_select_db() 函数选取数据库。

2.3、MySQL 常用数据类型

数值类型 描述
  • int(size)
  • smallint(size)
  • tinyint(size)
  • mediumint(size)
  • bigint(size)
仅支持整数。size 参数规定最大位数。
【各个数据类型最大位数取值:bigint(20) > int(11)> 其他】
(--比如:int(5)表示最大可以存储99999以内的数字  --)
  • decimal(size,d)      (计算用这个最精准)
  • double(size,d)        (双精度)
  • float(size,d)          (单精度,近似值)

支持带有小数的数字。在 size 参数中规定数字的最大位数。在 d 参数中规定小数点右侧的数字的最大位数。

文本数据类型 描述
char(size)

支持固定长度的字符串。(可包含字母、数字以及特殊符号)。

在 size 参数中规定固定长度。最大是char(255)。

varchar(size)
(适合标题...短长度)

支持可变长度的字符串。(可包含字母、数字以及特殊符号)。

在 size 参数中规定最大长度。最大是varchar(255)。

tinytext 支持可变长度的字符串,最大长度是 255 个字符。
  • text(适合留言等中...长度)
  • blob
支持可变长度的字符串,最大长度是 65535 个字符。
  • mediumtext  (适合文章内容...较长长度)
  • mediumblob (适合二进制图片存储)
支持可变长度的字符串,最大长度是 16777215 个字符。
  • longtext
  • longblob(存二进制)
支持可变长度的字符串,最大长度是 4294967295 个字符。
注意:文本数据类型size表示英文字符数量,又叫长度。一个汉字是两个长度。
日期数据类型 描述
  • date(yyyy-mm-dd)
  • datetime(yyyy-mm-dd hh:mm:ss)
  • time(hh:mm:ss)

timestamp

支持日期或时间
timestamp用来存时间戳

2.4、主键和自动递增字段

每个表都应有一个主键字段。

主键用于对表中的行进行唯一标识。每个主键值在表中必须是唯一的。此外,主键字段不能为空,这是由于数据库引擎需要一个值来对记录进行定位。

主键字段永远要被编入索引。这条规则没有例外。你必须对主键字段进行索引,这样数据库引擎才能快速定位给予该键值的行。

下面的例子把 personID 字段设置为主键字段。主键字段通常是 ID 号,且通常使用 AUTO_INCREMENT 设置。AUTO_INCREMENT 会在新记录被添加时逐一增加该字段的值。要确保主键字段不为空,我们必须向该字段添加 NOT NULL 设置。(数据库创建完整代码

unisgned无符号数,表示没有负数形式。同时整数范围扩大一倍。

2.5、时间存储类型比较

不需要比较大小时,用datatime(精确到秒)或者data(精确到日)类型。需要比较大小时,用int类型。

既可以比较大小,又可以直观看懂日期。可以将日期以20180326(int)形式存储在数据库。

注意:timestamp比datatime显示的日期范围小,容易受时区影响。不建议使用。

2.6、MyISAM和InnoDB两种引擎比较

MyISAM

  1. MyISAM引擎是MySQL5.1及之前版本的默认引擎,它的特点是:
  2. 不支持行锁,读取时对需要读到的所有表加锁,写入时则对表加排它锁
  3. 不支持事务
  4. 不支持外键
  5. 不支持崩溃后的安全恢复
  6. 在表有读取查询的同时,支持往表中插入新纪录
  7. 支持BLOB和TEXT的前500个字符索引,支持全文索引
  8. 支持延迟更新索引,极大提升写入性能
  9. 对于不会进行修改的表,支持压缩表,极大减少磁盘空间占用

InnoDB

  1. InnoDB在MySQL5.5后成为默认索引,它的特点是:
  2. 支持行锁,采用MVCC来支持高并发
  3. 支持事务
  4. 支持外键
  5. 支持崩溃后的安全恢复
  6. 不支持全文索引

总体来讲,MyISAM适合SELECT密集型的表,而InnoDB适合INSERT和UPDATE密集型的表。

一般中小型数据量试用MyISAM引擎,大型数据量适用InnoDB引擎

转载于:https://www.cnblogs.com/php99/p/9761818.html

【MySQL】2、MySQL 创建数据库和表相关推荐

  1. Mysql学习(二)创建数据库和表

    MySQL简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在WEB应用方面,MySQL是最好的 ...

  2. MySQL基础知识——创建数据库和表

    点击上方SQL数据库开发,关注获取SQL视频教程 SQL专栏 SQL基础知识汇总 SQL高级知识汇总 创建数据库语法 CREATE TABLE tablename 或 CREATE TABLE `ta ...

  3. MySQL57图形化建表_Navicat 创建数据库和表之图形化界面方法

    本文主要介绍 Navicat 连接 MySQL 使用,创建数据库和表. 创建之前,我们需要一台已经配置好MySQL数据库和安装了Navicat客户端的电脑. 使用Navicat创建数据库和表有两种方法 ...

  4. 数据库MySQL相关操作||创建数据库、显示所有数据库、切换数据库、显示数据库下的数据库表、删除数据库

    数据库MySQL相关操作||创建数据库.显示所有数据库.切换数据库.显示数据库下的数据库表.删除数据库 1,创建数据库 create databases mydb: 记得加:(分号) 2,显示所有数据 ...

  5. PHP教程 数据库和MySQL_PHP教程 - MySQL 创建数据库和表

    PHP MySQL 创建数据库和表 数据库存有一个或多个表. 创建数据库 CREATE DATABASE 语句用于在 MySQL 中创建数据库. 语法 CREATE DATABASE database ...

  6. cmd(命令行)操作或连接mysql数据库,以及创建数据库与表

    1.相关指令 1.按下键盘上的windows+R键输入cmd,或在搜索框直接输入cmd 2.进入mysql: 在命令行输入mysql -uroot -p,然后输入你的mysql密码,成功后进入mysq ...

  7. 如何使用mysql数据库创建数据库和表以及导入导出文件问题?

    mysql5.5安装教程: 安装过程链接: 安装出错解决链接: 安装包:https://pan.baidu.com/s/1Jfsh11_P_yVLUkEPTGzLAA 提取码zdag 创建数据库和表: ...

  8. 【mysql创建数据库以及表添加内容】

    mysql创建数据库以及表添加内容 第一步 先打开cmd 第二步 输入mysql -u root -p,然后就进入mysql 第三步 创建数据库 create database [数据库名],这里我用 ...

  9. mysql 创建数据库 添加表

    mysql 创建数据库 添加表 -- 作业 -- 创建数据库 create database mydb character set utf8; -- 查询所有数据库 show DATABASES; - ...

  10. 用php创建数据库代码,php创建数据库_PHP MySQL 创建数据库与表示例

    摘要 腾兴网为您分享:PHP MySQL 创建数据库与表示例,掌上新华,携程,小牛,苏宁易购等软件知识,以及死神觉醒ios,花视频,s3云存储,华为谷歌器,学成网,cf掌上,互刷天下,抖音批量,润乾报 ...

最新文章

  1. ASP.NET中验证控件的使用
  2. Android下 scrollview的滚动停止事件的监听方法
  3. 树莓派3 mysql端口_树莓派3 之 安装Mysql服务
  4. CAD格式数据转ArcGIS数据方法总结
  5. java xml dom getelementbyid,DOM中常见的元素获取方式
  6. Redis 3.0.1 安装和配置
  7. C#基于LibUsbDotNet实现USB通信(一)
  8. 学习Spring Boot:(三)配置文件
  9. 【SpringCloud】 第十篇: 高可用的服务注册中心
  10. 在回调中获取Url参数
  11. 第007讲 地图映射,线包字
  12. 使用VNC远程登录百度智能云服务器
  13. windows服务器ssl证书安装及配置
  14. linux屏幕伽马值设置,设置计算机显示屏的亮度和对比度伽玛值
  15. Java File、Paths、Path的意外错误:file.exists() 结果错误
  16. keil中更改stm32芯片类型需要修改的配置
  17. scipy 三次样条插值
  18. 深圳-国信证券项目组-市场风险二期
  19. camera摄像原理之三:色温和自动白平衡
  20. STEM教育活动一览

热门文章

  1. Elasticsearch 7.9.3 发布
  2. 微服务架构学习笔记(一):gRPC Spring Boot Starter 2.2.0 发布,及使用步骤
  3. C# XElement
  4. 提高工作效率的几个网站
  5. C# 提取字符串中的数字,去除字符串中的重复字符逗号分隔
  6. C#获取电脑硬件信息(CPU ID、主板ID、硬盘ID、BIOS编
  7. PHP根据配置的规则,计算用户的等级
  8. 全网首发:LINUX编译JNA:编译libffi
  9. libcmtd.lib(wincrt0.obj) : error LNK2019: 无法解析的外部符号 WinMain,该符号在函数 __tmainCRTStartup 中被引用
  10. 总感觉这个访问量过于均匀……