利用ChatGPT(new bing)数据库开发实践

在开发时,需要把mysql的表结构转换成pgsql,两者的语法差别自己知道,想看一下New Bing是否智能。

第一回合:

问AI:

以下mysql表结构改写成pgsql:

DROP TABLE IF EXISTS `tb_test`;

CREATE TABLE `tb_test` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`create_time` datetime(0) NULL DEFAULT NULL COMMENT ‘查询时间’,

`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin NULL DEFAULT NULL COMMENT ‘名称’,

PRIMARY KEY (`id`) USING BTREE

) ENGINE = InnoDB AUTO_INCREMENT = 290383 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_bin COMMENT = ‘请求样本’ ROW_FORMAT = Dynamic;

AI回答如下:

您好,这是Bing。您想要将MySQL表结构转换为PostgreSQL的格式吗?如果是这样,您可以使用一些在线工具或软件来帮助您完成这个任务。例如,您可以尝试使用SQLines1或Stack Overflow2上推荐的方法。我为您生成了一个可能的转换结果,但请注意,这不一定是最优或最准确的,您可能需要根据您的具体需求进行一些调整。希望对您有所帮助。

-- 以下是可能的转换结果
DROP TABLE IF EXISTS tb_test;
CREATE TABLE tb_test (
id serial NOT NULL,
create_time timestamp NULL DEFAULT NULL COMMENT '查询时间',
name varchar(255) NULL DEFAULT NULL COMMENT '名称',
PRIMARY KEY (id))
COMMENT = '请求样本';

第二回合:

Ai回答内容有问题,进一步纠正它的错误。

问AI:

pgsql的字段后面不能直接带comment

AI回答如下:

您说得对,PostgreSQL的字段后面不能直接带comment,需要使用COMMENT命令1来单独设置。例如,您可以这样写:

COMMENT ON COLUMN wz_specimen.create_time IS '查询时间';
COMMENT ON COLUMN wz_specimen.name IS '企业名称';
-- 以此类推

您也可以使用psql的dt+和d+命令来查看表和字段的注释2。希望这些信息对您有用。

第三回合:

AI还是挺聪明,一点就明白,不过希望给个完整,可以直接复制。

问AI:

重新写个完整正确的

AI回答如下:

好的,我尝试重新写一个完整正确的PostgreSQL表结构,但请注意,这不一定是最优或最准确的,您可能需要根据您的具体需求进行一些调整。请看:

-- 以下是可能的转换结果DROP TABLE IF EXISTS tb_test;

DROP TABLE IF EXISTS tb_test;
CREATE TABLE tb_test (
id serial NOT NULL,
create_time timestamp NULL DEFAULT NULL ,
name varchar(255) NULL DEFAULT NULL ,
PRIMARY KEY (id)) ;

COMMENT ON COLUMN wz_specimen.create_time IS '查询时间';
COMMENT ON COLUMN wz_specimen.name IS '企业名称';

关注公众号“大模型全栈程序员”回复“小程序”获取1000个小程序打包源码。更多免费资源在http://www.gitweixin.com/?p=2627

发表评论

邮箱地址不会被公开。 必填项已用*标注