您的位置:首页 > 数码常识数码常识

mysql创建数据库和数据表(在MySQL中创建数据库和表)

2025-05-12人已围观

mysql创建数据库和数据表(在MySQL中创建数据库和表)
  虚构一个微型在线书店的数据库和数据,作为后续MySQL脚本的执行源,方便后续MySQL和SQL的练习。

  在MySQL中创建数据库和表

  在虚构这个库的过程中,主要涉及的是如何使用命令行管理 MySQL数据库对象:数据库、表、索引、外键等;另一个更为重要的是如何Mock对应表的数据。

  虚构书店数据库的dump脚本:Github

  数据库(Database)

  将要创建的虚拟书店的数据库名为: mysql_practice;

  创建数据库的语法:

  IF NOT EXISTS: 可选项,避免数据库已经存在时报错。CHARACTER SET:可选项,不指定的时候会默认给个。查看当前MySQL Server支持的字符集(character set):show character set; -- 方法1 show charset; -- 方法2 show char set; -- 方法3COLLATE:针对特定character set比较字符串的规则集合;可选项,不指定的时候会默认给个。获取 charater set的 collationsshow collation like 'utf8%'; collation名字的规则: charater_set_name_ci 或者 charater_set_name_cs 或 charater_set_name_bin;_ci表示不区分大小写,_cs表示区分大小写;_bin表示用编码值比较。示例:CREATE DATABASE my_test_tb CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;

  TODO: 关于 character set和collations,内容稍微有点多,后面会单独记一篇文章。

  登录的时候选择数据库

  登录后选择数据库

  查看当前选的数据库

  创建新数据库

  通过下面的语句可以检查创建的数据库:

  可以看到,如果创建数据库时候没有指定 character set 和 collate 的话,会默认指定一套。

  显示所有当前账户可见的数据库

  删除数据库

  MySQL中 schema 是 database 的同义词,因此也可以使用下面语句删除数据库:

  数据表(Table)MySQL创建数据表的语法

  表列的定义语法:

  表的约束(Table Constraints): UNIQUE, CHECK, PRIMARY KEY and FOREIGN KEY.

  查看表的定义

  创建mysql_practice数据表

  导入region数据

  下载region csv数据:【三级】省市区 数据下载.

  导入语句:

  导入如果报错:

  通过命令 mdfind -name my.cnf 找到mysql配置文件 my.cnf;解决办法 (还没实际测试过,大都使用的是 LOATA DATA LOCAL INFILE 方式)

  或者使用 LOAD DATA LOCAL INFILE代替 LOAD DATA INFILE 即:

  如果报错:

  或者报错:

  查看配置: show variables like "local_infile";修改配置: set global local_infile=1;生成Customer数据

  创建一个SP:

  调用SP:

  生成产品分类和产品数据

  第零步: 手动插入产品分类到product_category表中

  第一步: 用Python写个爬虫工具,抓取书店的商品信息。

  下面是抓取当当搜索“科学”关键字的书籍列表。

  第二步: 导入csv数据到MySQL数据表mock_science中。

  第三步: 插入科学类书信息到product表中

  循环第一到第三步,可以插入更多的产品信息。练习数据库最终抓取了JAVA,儿童,科学三个关键搜索出的第一页书籍。

  生成订单数据

  随机生成订单数据的SP(注意:这个sp生成的数据,还需要进一步处理):

  总共会生成几十万或上百万条order数据;最好先简单加下index,不然query太慢,可以在创建db table后就加上。

  添加index:

  更新order no:

  如果不想有重复的order no,可以通过下面的sql更新order no:

  如果还有重复的order no,继续run上面这个sql,直到没有重复的即可。

  更新order表里的total_price:

  至此,我们的数据库表和对应的mock数据已经基本完成。使用mysqldump备份一下:

  下一步视图(View)存储过程(Store Procedure)函数(Function)触发器(Trigger)定时任务(Job)

  上面就是小居数码小编今天给大家介绍的关于(在MySQL中创建数据库和表)的全部内容,希望可以帮助到你,想了解更多关于数码知识的问题,欢迎关注我们,并收藏,转发,分享。

  94%的朋友还想知道的:

  10款最出色的免费数据库管理工具推荐(免费数据库管理工具)

  数据库索引调优(数据库索引和优化)

  数据库索引是干什么用的(数据库索引是干啥的)

  mysql数据库安装方法(安装mysql数据库步骤)



  154617
 

很赞哦! ()

随机图文