如何用ai来完成数据库分析(2)

一样的前言

因一些课程设计要写长篇分析报告,这里借用ai做一篇指导教程,分上下两篇。这篇也会教如何让ai给你你想要的答案,众所周知,现在的ai并不智能,不针对各类厂家,但是放出来的确实表象如此。

但其实问法决定了我们很多时候无法解锁其100%的功能,错误的问答方式甚至让回复比1.0的版本更加混乱无序。所以,这篇也有ai指导性的说明。

最后,这是设计的后半部分,需要前半部分请去博客主页查看。,那我们继续说数据部分

Navicate

我们新建一个数据库,切换到新建查询界面

在这里插入图片描述
在这里插入图片描述

运行我们之前的语句,很幸运,我们的代码并没有问题,

CREATE TABLE Merchant (
    MerchantID INT PRIMARY KEY,
    Name VARCHAR(255) NOT NULL,
    Address VARCHAR(255),
    Phone VARCHAR(20)
);

CREATE TABLE Sale (
    SaleID INT PRIMARY KEY,
    MerchantID INT,
    SaleDate DATE NOT NULL,
    SaleTime TIME NOT NULL,
    InvoiceNumber VARCHAR(50) UNIQUE,
    FOREIGN KEY (MerchantID) REFERENCES Merchant(MerchantID)
);

CREATE TABLE Product (
    ProductID INT PRIMARY KEY,
    ProductName VARCHAR(255) NOT NULL,
    UnitPrice DECIMAL(10, 2) NOT NULL
);

CREATE TABLE SaleDetail (
    SaleDetailID INT PRIMARY KEY,
    SaleID INT,
    ProductID INT,
    Quantity INT NOT NULL,
    TotalPrice DECIMAL(10, 2) NOT NULL,
    FOREIGN KEY (SaleID) REFERENCES Sale(SaleID),
    FOREIGN KEY (ProductID) REFERENCES Product(ProductID)
);

在这里插入图片描述然后还是这个页面,我们插入数据

INSERT INTO Merchant (MerchantID, Name, Address, Phone)
VALUES
    (1, 'ABC 商店', '上海市浦东新区世纪大道100号', '13800138000'),
    (2, 'XYZ 超市', '北京市朝阳区建国路88号', '13900139000');
INSERT INTO Sale (SaleID, MerchantID, SaleDate, SaleTime, InvoiceNumber)
VALUES
    (1, 1, '2024-07-26', '14:30:00', 'INV12345'),
    (2, 2, '2024-07-26', '15:15:00', 'INV67890');
		INSERT INTO Product (ProductID, ProductName, UnitPrice)
VALUES
    (1, '苹果', 5.50),
    (2, '牛奶', 10.00),
    (3, '面包', 3.00);
		INSERT INTO SaleDetail (SaleDetailID, SaleID, ProductID, Quantity, TotalPrice)
VALUES
    (1, 1, 1, 2, 11.00),  -- 苹果 x 2
    (2, 1, 2, 1, 10.00),  -- 牛奶 x 1
    (3, 2, 3, 3, 9.00);   -- 面包 x 3

这里一遍成功,已经可以看到我们的表有数据了,接下来做图和模型

Navicate模型

软件自带的逆向非常好用,可以用这个来看关系模型
在这里插入图片描述
在这里插入图片描述

er图网址:

https://zhzsoft.cn/er/

首先,我们要转存一下sql文件,像这样,保存到桌面上即可
在这里插入图片描述
在这里插入图片描述
选用这个格式
在这里插入图片描述
然后上传你的sql文件就可以画了,不过作者只免费5次,虽然可以通过换代理的方式来白嫖长度,但其实我们前面的逆向模型已经完成一大部分内容了,这个可以说是在水长度,我推荐一个免费的制作网站,需要手动画,但是很流畅。

首页 - boardmix

ps:数据库语句,插入语句等可以放在文中水长度,如果不允许附带sql文件的情况下。

数据模拟

我们还是问ai,把时间拉回到刚问过模拟数据的节点
在这里插入图片描述
现在我们要做的就是让ai生成一条查询语句,查出小票上那些该有的内容

请生成一条查询语句,要求包含小票书面上包含:
商家信息:
商家名称
商家地址
商家联系电话
交易日期和时间:
交易发生的日期
交易发生的时间
销售单据信息:
发票或小票号码
商品或服务信息:
商品名称或服务项目
单位价格
数量
总价
,并预计输出结果

大家可以看出来,中间就是ai生成过的“小票应该包含的部分”,最后一定要注意,让他预计输出结果,这样可以有效提高正确率。

SELECT 
    M.Name AS 商家名称,
    M.Address AS 商家地址,
    M.Phone AS 商家联系电话,
    S.SaleDate AS 交易日期,
    S.SaleTime AS 交易时间,
    S.InvoiceNumber AS 发票或小票号码,
    P.ProductName AS 商品名称,
    P.UnitPrice AS 单位价格,
    SD.Quantity AS 数量,
    SD.TotalPrice AS 总价
FROM 
    Merchant M
JOIN 
    Sale S ON M.MerchantID = S.MerchantID
JOIN 
    SaleDetail SD ON S.SaleID = SD.SaleID
JOIN 
    Product P ON SD.ProductID = P.ProductID;

在这里插入图片描述结果正确,小结什么的,适当问问ai就可以了,这个没法细说,为了保证大家感悟不一样,可以适当多做几篇,让ai多更改几次。

  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值