zoukankan      html  css  js  c++  java
  • Mysql与Postgresql

      在经过一段时间的数据库学习之后,我接触到了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时不存在该选项,目前不知道原因。

  • 相关阅读:
    Struts2.5 利用Ajax将json数据传值到JSP
    io/nio
    Elasticsearch 、 Logstash以及Kibana 分布式日志
    zookeeper
    mybatis
    Kubemetes
    线程池
    @Builder
    jdk命令行工具系列
    什么是分布式事务
  • 原文地址:https://www.cnblogs.com/GongZhiMao/p/9916519.html
Copyright © 2011-2022 走看看