在经过一段时间的数据库学习之后,我接触到了Mysql与Postgresql两种数据库管理系统,由于我对这两者的理解都停留在很浅的层面,就不在此比较两者的好坏,主要在这里比较一下两者的入门指令(当然两者都可以通过Navicat或其他软甲来管理数据库--而postgresql安装时就自带pgAdmin管理软件--但在这里主要是比较在CMD中的操作指令)以及最近了解到的一个小知识

另外要注意的是想要通过CMD来操作两个数据库,都需要在环境变量的PATH中添加到安装目录的bin文件夹,我在安装postgresql时由于使用的是安装程序,所以未配置环境变量,使得psql一直是无法识别的指令

接下来就分析两者指令的区别:
  1、登陆:

mysql:mysql -u root -p 再输入用户密码

postgresql:psql -h localhost(本地IP地址,也可以直接输入IP值) -U username(默认安装情况下用户名为postgres),该方法进入postgesql管理系统与mysql进入的界面一样,同时还可以通过指令psql -h localhost -U username -d dbname 直接连接到名字为dbname的数据库中,另外postgresql中自带一个SQL shell可以直接进入数据库管理界面

2、列出所有数据库

mysql:show databases

postgresql:\l或\list

3、进入某一个数据库

mysql:use 数据库名

postgresql:\c 数据库名

4、列出所有表

mysql:show tables

postgresql:\d

5、退出

mysql:quit

postgresql:\q

上面展示的都是两者的基本指令,至于其他的建数据库,建表等SQL语句都是一致的,此处就不做详述,另外一点就是在postgresql中可以通过help指令来显示该层的指令操作

最后就是我在学习mysql的过程中得到的一个小知识,当我们建立字段时会用到int数据类型,同时也就存在int(n)这样的数据类型,起初我以为该操作与char(n)一样,表示固定int的长度,也就是当我设置一个字段为int(5)时,我一定要输入5个数,当字段为int(12)时,一定要输入12个数。然而实际上后者是错的,int(12)也只占4个字节,而12位整数已经超过int的取值范围,后面的n实际上作用是字段的最低显示长度,并且要加上zerofill指令才能做到当位数不满足最低位数时高位补0,比如说int(5) zerofill,当输入值为100时,显示的数就是00100,当不存在zerofill时,该长度设置无效。

而对应的Navicat中在管理Mysql设置int数据类型时下面有一个“位数不足时补零”的选项,不过在管理postgresql时不存在该选项,目前不知道原因。

Mysql与Postgresql的更多相关文章

  1. SQLite vs MySQL vs PostgreSQL:关系型数据库比较

    自1970年埃德加·科德提出关系模型之后,关系型数据库便开始出现,经过了40多年的演化,如今的关系型数据库种类繁多,功能强大,使用广泛.面对如此之多的关系型数据库,我们应该如何权衡找出适合自己应用场景 ...

  2. 【转】 MySQL与PostgreSQL:该选择哪个开源数据库?哪一个更好?

    转载地址:http://www.infoq.com/cn/news/2013/12/mysql-vs-postgresql 如果打算为项目选择一款免费.开源的数据库,那么你可能会在MySQL与Post ...

  3. 常用SQL操作(MySQL或PostgreSQL)与相关数据库概念

    本文对常用数据库操作及相关基本概念进行总结:MySQL和PostgreSQL对SQL的支持有所不同,大部分SQL操作还是一样的. 选择要用的数据库(MySQL):use database_name; ...

  4. MySQL和PostgreSQL 导入数据对照

    在虚拟机上測评了下MySQL 和 PostgreSQL 的各种LOAD FILE方式以及时间. 由于是虚拟机上的測评,所以时间仅仅做參考,不要太较真, 看看就好了.MySQL 工具:    1. 自带 ...

  5. 关于PDF.NET开发框架对Mysql Sqlite PostgreSQL数据库分页支持的个人看法

    关于PDF.NET开发框架的名字由来  在设计www.pwmis.com站点的时候,考虑到架构的兼容性和将来升级的可能性,最重要的是没有足够的时间去为网站添加和维护很多复杂的程序,所以在借鉴前人成功经 ...

  6. 异常 SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase]

    使用Spring 的JDBCtemplate 调用数据库的时候 出现了如下的问题 SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-S ...

  7. 在MySQL和PostgreSQL之外,为什么阿里要研发HybridDB数据库?

    http://www.infoq.com/cn/news/2016/12/MySQL-PostgreSQL-Greenplum 编者按 在大数据火遍IT界之前,大家对数据信息的挖掘通常聚焦在BI(Bu ...

  8. 常用Mysql或者PostGresql或者Greenplum的语句总结。

    1.使用mysql的union all可以同时查询出所有自己想要查询数据表的数据量. select 'user' as tablename, count(*) from user union all ...

  9. Mybatis运行错误:信息: SQLErrorCodes loaded: [DB2, Derby, H2, HDB, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase]

    Mybatis运行出现错误提示: 五月 23, 2018 12:07:22 上午 org.springframework.jdbc.support.SQLErrorCodesFactory <i ...

随机推荐

  1. C语言:二进制模5

    输入一串字符,若是二进制则求其模五的值. 要求:1.若输入的字符包含除0.1以外的值,则输出:invalid 2.若输入的为二进制字符串,则输出所计算的其模五的值 3.若其输入字符均为0.1,但是第一 ...

  2. [ipsec][crypto] 什么是AEAD加密算法中的AAD 及aad length

    AAD 全称:Additianal Authenticated Data 翻译成中文就是附加的验证数据. 在理解AAD之前,需要理解什么是AEAD: AEAD,简单的来说就是一份数据在完成加密的时候同 ...

  3. poj1699

    #include<iostream> #include<cstring> using namespace std; ][]; ],len[],addlen[][]; int m ...

  4. docker国内镜像源

    https://www.daocloud.io/mirror curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http ...

  5. 共享文件 Ubuntu下安装Samba与Windows

    Author:Xianghai Ding.Date:2019/01/08**************************************************************安装 ...

  6. JavaScript 中 return,return true,return false

    1.return: ①return + 表达式,调用函数,并返回表达式的值 ②return,终止函数 ③当代码执行到return语句时,函数返回一个结果就结束运行了,return后面的语句根本不会执行 ...

  7. 学号20175313 《实现Linux下cp XXX1 XXX2的功能(二)》第九周

    目录 MyCP2 一.题目要求 二.题目理解 三.需求分析 四.设计思路 五.伪代码分析 六.代码链接 七.代码实现过程中遇到的问题 八.运行结果截图 九.心得体会 十.参考资料 MyCP2 一.题目 ...

  8. vue深度监控数据改变,缓存数据到本地

    项目效果图: var vm = new Vue({ el:'#app', data:{ students:[], }, watch:{ students:{ handler(){ localStora ...

  9. supervise守护进程

    通过二进制supervise文件可以直接对进程进行守护 ./supervise -f  要守护的程序 -p  守护信息存储位置 例如: ./supervise -f  http_server -p s ...

  10. UML第三次作业

    一.PlantUML类图 语法学习小结 关系上的标识:在关系之间使用标签来说明时, 使用 :后接 标签文字.对元素的说明,可以在每一边使用 "" 来说明. 1 @startuml ...