在 PlanetScale 数据库上运行 SQL 脚本文件
如果你曾需要对 MySQL 数据库运行大量命令,手动将这些命令逐一输入到客户端可能会很麻烦。幸运的是,通过 PlanetScale CLI,你可以使用本地开发电脑上的脚本文件轻松批量运行命令以与 PlanetScale 数据库交互!
在本指南中,我将向你展示如何创建一个空数据库并使用 SQL 脚本文件填充数据。在开始之前,请确保以下条件:
- 你拥有一个 PlanetScale 账户。
- 你已经安装并配置好了 PlanetScale CLI。
- 如果尚未准备好脚本,请先创建一个脚本供运行。在本文中,我将使用以下脚本,此脚本来自 示例仓库 go-bookings-api 的代码片段:
CREATE TABLE hotels( id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50) NOT NULL, address VARCHAR(50) NOT NULL, stars FLOAT(2) UNSIGNED ); INSERT INTO hotels (name, address, stars) VALUES ('Hotel California', '1967 Can Never Leave Ln, San Francisco CA, 94016', 7.6), ('The Galt House', '140 N Fourth St, Louisville, KY 40202', 8.0);
请将上述 SQL 保存到系统中的一个新文件,命名为 create_db_script.sql
。在保存文件的目录中打开终端。首先,运行以下命令来创建一个新数据库:
pscale database create travel_api
命令输出(创建数据库) 创建数据库后,PlanetScale 默认会生成一个名为 main
的分支。我们可以使用这个分支和 pscale shell
命令来将之前保存的脚本文件中的 SQL 命令直接传入,不会输出任何结果,这表示脚本成功运行。
pscale shell travel_api main < ./create_db_script.sql
命令输出(通过脚本管道运行 SQL)
接下来,我们可以再次使用 shell 来手动在数据库上运行命令。注意,提示符会变化,从默认的终端提示符变成 database_name/branch_name>
。
pscale shell travel_api main
与数据库主分支(main)连接
运行以下命令以显示创建的 hotels
表:
SHOW TABLES;
输出:
+----------------------+ | Tables_in_travel_api | +----------------------+ | hotels | +----------------------+
然后运行一个 SELECT
语句以查看填充到 hotels
表的数据:
SELECT * FROM hotels;
查询结果示例:
此示例虽然相对简单,但想象一个需要通过多个命令创建并填充整个数据库模式的场景。以这种方式操作相比手动输入所有命令,会更简单和高效!
关注公众号:程序新视界,一个让你软实力、硬技术同步提升的平台
除非注明,否则均为程序新视界原创文章,转载必须以链接形式标明本文链接
本文链接:http://www.choupangxia.com/2025/09/07/planetscale-database-sql-shell/