返回顶部
首页 > 资讯 > 数据库 >MySQL 用随机数据填充外键表
  • 407
分享到

MySQL 用随机数据填充外键表

2024-04-02 19:04:59 407人浏览 安东尼
摘要

参考: Http://blog.itpub.net/29254281/viewspace-1686302/ 准备环境 1.创建数字辅助表 create table nums(id int not null

参考:
Http://blog.itpub.net/29254281/viewspace-1686302/

准备环境
1.创建数字辅助表
create table nums(id int not null primary key);

delimiter $$
create procedure pFastCreateNums(cnt int)
begin
    declare s int default 1;
    truncate table nums;
    insert into nums select s;
    while s*2<=cnt do
        insert into nums select id+s from nums;
        set s=s*2;
    end while;
end $$
delimiter ;


call pFastCreateNums(1000000);

数字辅助表的行数决定最后能生成的表行数的最大值.

2.创建生成随机字符的函数

  1. DROP FUNCTioN IF EXISTS rand_string;
  2. delimiter //
  3. CREATE FUNCTION rand_string(l_num int UNSIGNED,l_type tinyint UNSIGNED)
  4. RETURNS varchar(2000)
  5. BEGIN
  6.  -- Function : rand_string
  7.  -- Author : dbachina#dbachina.com
  8.  -- Date : 2010/5/30
  9.  -- l_num : The length of random string
  10.  -- l_type: The string type
  11.  -- 1.0-9
  12.  -- 2.a-z
  13.  -- 3.A-Z
  14.  -- 4.a-zA-Z
  15.  -- 5.0-9a-zA-Z
  16.  -- :
  17.   -- Mysql> select rand_string(12,5) random_string;
  18.   -- +---------------+
  19.   -- | random_string |
  20.   -- +---------------+
  21.   -- | 3KzGJCUJUplw |
  22.   -- +---------------+
  23.   -- 1 row in set (0.00 sec)
  24.  DECLARE i int UNSIGNED DEFAULT 0;
  25.  DECLARE v_chars varchar(64) DEFAULT '0123456789';
  26.   DECLARE result varchar (2000) DEFAULT '';
  27.  
  28.   IF l_type = 1 THEN
  29.     SET v_chars = '0123456789';
  30.   ELSEIF l_type = 2 THEN
  31.     SET v_chars = 'abcdefghijklmnopqrstuvwxyz';
  32.   ELSEIF l_type = 3 THEN
  33.     SET v_chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
  34.   ELSEIF l_type = 4 THEN
  35.     SET v_chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
  36.   ELSEIF l_type = 5 THEN
  37.     SET v_chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
  38.   ELSE
  39.     SET v_chars = '0123456789';
  40.   END IF;
  41.  
  42.   WHILE i < l_num DO
  43.       SET result = concat( result,substr(v_chars,ceil(rand()*(length(v_chars)-1)),1) );
  44.     SET i = i + 1;
  45.   END WHILE;
  46.   RETURN result;
  47. END;
  48. //
  49. delimiter ;
您可能感兴趣的文档:

--结束END--

本文标题: MySQL 用随机数据填充外键表

本文链接: https://lsjlt.com/news/49541.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL 用随机数据填充外键表
    参考: http://blog.itpub.net/29254281/viewspace-1686302/ 准备环境 1.创建数字辅助表 create table nums(id int not null...
    99+
    2024-04-02
  • laravel的数据表填充器使用详解
    目录一、数据表填充器1.1 填充器(种子文件)的创建与编写1.1.2、创建填充器1.1.3、【重点】编写填充器代码1.2 执行填充器文件一、数据表填充器 填充操作就是往数据表中写测试...
    99+
    2024-04-02
  • MySQL:创建数据库,数据表,主键和外键
    目录 前言: 安装MySQL: 打开MySQL: 创建数据库: 查看已建数据库: 查看数据库引擎: 创建数据表:  主键约束: 单字段主键: 多字段联合主键: 外键约束: 前言: MySQL数据库安装了很久,一直也没静下心来学习,因为起...
    99+
    2023-10-18
    mysql 数据库
  • qt中怎么用代码向表格填充数据
    在Qt中,可以使用QStandardItemModel类来实现向表格填充数据。 首先,需要创建一个QStandardItemMode...
    99+
    2024-02-29
    qt
  • Javascript如何使用数据填充数组
    这篇文章主要介绍Javascript如何使用数据填充数组,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!用数据填充数组如果我们需要用一些数据来填充数组,或者需要一个具有相同值的数据,我们可以用fill()方法。var&...
    99+
    2023-06-17
  • excel如何用if函数填充数据
    在Excel中,可以使用IF函数来填充数据。IF函数的语法是:IF(条件, 结果为真时的值, 结果为假时的值)。以下是使用IF函数填...
    99+
    2023-10-10
    excel
  • 创建数据表主键外键
    1、创建数据表按行和列的方式存储,每一行唯一一条记录,每一列代表记录中的某个字段或者是域。格式:表的名称不区分大小写,不能使用SQL关键字;存在多列使用逗号分隔。 create table <tabl...
    99+
    2024-04-02
  • Android中怎么利用 ListView填充数据
    本篇文章为大家展示了Android中怎么利用 ListView填充数据,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Android ListView填充数据的方法代码如下:public c...
    99+
    2023-05-30
    android listview
  • PHP如何使用指定的键和值填充数组
    这篇文章将为大家详细讲解有关PHP如何使用指定的键和值填充数组,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用指定的键和值填充数组 在 PHP 中,使用指定的键和值填充数组有几种方法: 方法 1:使用数...
    99+
    2024-04-02
  • mysql随机抽取数据
      -- 慢 SELECT * FROM table_name ORDER BY rand() LIMIT 5; -- 较慢 SELECT * FROM `table` WHERE id >= (SEL...
    99+
    2020-09-09
    mysql随机抽取数据
  • mysql中decimal数据类型小数位填充问题详解
    前言 在开发过程中,我们往往会用到decimal数据类型。因为decimal是MySQL中存在的精准数据类型。 MySQL中的数据类型有:float,double等非精准数据类型和decimal这种精准。 区别:fl...
    99+
    2022-05-24
    mysql decimal小数位填充 mysql 小数位填充
  • 使用Ajax请求动态填充页面数据
    这期内容当中小编将会给大家带来有关使用Ajax请求动态填充页面数据,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。实现功能:点击页面上的按钮实现动态追加数据实现原理:点击页面按钮,通过Ajax提交请求到后台...
    99+
    2023-06-08
  • 如何在Mysql数据库中数据表使用外键与三范式
    这篇文章将为大家详细讲解有关如何在Mysql数据库中数据表使用外键与三范式,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。数据表优化将商品信息表进行优化1.创...
    99+
    2024-04-02
  • C#手动操作DataGridView使用各种数据源填充表格实例
    目录一、手动操作DataGridView1、初步尝试2、批量加入3、带数据的行的加入rows.Add二、数据来源DataSource1、来自列表List2、来自自定义DataTabl...
    99+
    2023-02-06
    C# DataGridView数据源填充 C#手动操作DataGridVie数据填充
  • 用列的值填充字符串后如何更新 MySQL 表?
    我们可以使用LPAD()或RPAD()函数以及UPDATE子句,在填充字符串的同时更新MySQL表中的列的值。以下是使用'examination_btech'表的示例,将使其更清晰-示例假设我们想要在列course的最后附加...
    99+
    2023-10-22
  • 用列的值填充字符串后如何更新 MySQL 表
    要用列的值填充字符串并更新 MySQL 表,你可以使用 UPDATE 语句结合 CONCAT 函数来实现。以下是一个示例查询,假设有...
    99+
    2023-10-20
    MySQL
  • MySQL数据库外键 foreing key
    目录1、外键操作1.1、增加外键1.2、删除外键1.3、外键的基本要求2、外键约束2.1、约束的基本概念2.2、外键约束的概念2.3、约束的作用前言: 外键表示了两个实体之间的联系 ...
    99+
    2024-04-02
  • mysql 随机查询10条数据
    要在MySQL中进行高效的随机查询并获取10条数据,可以使用以下方法: 方法一:使用`ORDER BY RAND()`和`LIMIT` SELECT * FROM your_tableORDER BY RAND()LIMIT 10;...
    99+
    2023-08-31
    mysql 数据库
  • MySQL中怎么实现在表中取出随机数据
    本篇文章为大家展示了MySQL中怎么实现在表中取出随机数据,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  如何在MySQL实现表中取出随机数据  SELEC...
    99+
    2024-04-02
  • 如何在MySQL数据库中使用外键
    如何在MySQL数据库中使用外键 在关系型数据库中,外键是一种非常重要的概念,它能够帮助我们建立不同表之间的关联关系,并确保数据完整性。在MySQL数据库中,要使用外键,需要遵循一定的...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作