我想创建简单的表格,在其中插入值并进行查询。如何在终端中执行它们?
答案1
以下是从终端执行 SQL 语句的语法
我假设您正在使用MySQL
。
句法:
mysql -u user_name -p password -e 'SQL Query' database
清除意义:
-u : Specify mysql database user name
-p : Prompt for password
-e : Execute sql query
database : Specify database name
例子:
如果你想创建一个表
person
那么:mysql -u root -p -e 'Create table person(PersonID int, LastName varchar(255), FirstName varchar(255))' mydb
其中
root
是用户名,mydb
是数据库的名称。同样,您可以执行任何您想要的查询。如果您想要的
insert
值person
:mysql -u root -p -e 'Insert into person(PersonID,LastName,FirstName) Values(100,"Kumar","Saurav")' mydb
如果您想从中选择所有信息
person
并将其保存在文件中:mysql -u root -p -e 'Select * from person' mydb > personinfo
当然,你也可以使用终端本身创建数据库
创建数据库数据库在终端中执行以下命令:
mysql -u root -p -e 'create database mydb'
它将默默地创建一个数据库数据库没有提供任何消息/输出。
要列出所有数据库,请在终端中执行此命令:
mysql -u root -p -e 'show databases'
希望它能帮助您。如果您需要进一步的帮助,请回复。
答案2
您可以通过键入以下内容来创建数据库
mysql
在您输入的提示中,您首先要创建数据库(正如 onik 在评论中所解释的那样):
CREATE DATABASE dbname
一旦创建了该数据库,您就可以对其进行实验。您只需mysql
在终端中输入然后您就可以做任何与 SQL 相关的操作了。您可能已经使用您的用户名在数据库中创建了一个角色。
正如 Sauruv 的回答中所述,您还可以按如下方式连接到数据库(p 和密码之间没有空格或更好,只是不使用 -p 选项,您将收到密码提示[感谢 onik]):
句法:
mysql -u user_name -ppassword dbname
-u : Specify mysql database user name
-p : Prompt for password
dbname : Specify database name
答案3
mycli
mysql
默认控制台很好,很漂亮,但也许更漂亮mycli
(它是 Postgres 的替代品,pgcli
)。
安装:Ubuntu 16.04+ 上的官方存储库为:sudo apt install mycli
$ mycli --help
Usage: mycli [OPTIONS] [DATABASE]
A MySQL terminal client with auto-completion and syntax highlighting.
Examples:
- mycli my_database
- mycli -u my_user -h my_host.com my_database
- mycli mysql://my_user@my_host.com:3306/my_database
参考
- 主页
- 文档
- Github 仓库
- nixCraft 帖子关于
mycli
答案4
有sqlline它可以连接到任何 rdbms(Oracle、mysql、postgres、h2 和其他),也可以连接到 csv、cassandra、elastic-search、mongo(通过 apache-calcite)。
有一个包含简短演示视频的项目演示页面 它提供多行编辑、语法高亮、智能自动完成、方言支持。
它可以嵌入,无需安装。