磨砺技术珠矶,践行数据之道,追求卓越价值
回到上一级页面:PostgreSQL基础知识与基本操作索引页    回到顶级页面:PostgreSQL索引页[作者 高健@博客园  luckyjackgao@gmail.com]

实验过程如下、建表:

建立带引号的表名:

postgres=# create table "GaoUser"(name varchar(10),age integer);
CREATE TABLE
postgres=# select * from GaoUser;
ERROR: relation "gaouser" does not exist
LINE 1: select * from GaoUser;
^
postgres=# select * from gaouser;
ERROR: relation "gaouser" does not exist
LINE 1: select * from gaouser;
^
postgres=# select * from "GaoUser";
name | age
------+-----
(0 rows)

上述的过程表明,带引号的表和不带引号的表,不是一回事。

再进一步实验:

postgres=# create table GaoUser(name varchar(10),age integer);
CREATE TABLE
postgres=# postgres=# create table gaouser(name varchar(10),age integer);
ERROR: relation "gaouser" already exists
postgres=# postgres=# create table GAOUSER(name varchar(10),age integer);
ERROR: relation "gaouser" already exists
postgres=# postgres=# select * from GaoUser;
name | age
------+-----
(0 rows) postgres=# select * from gaouser;
name | age
------+-----
(0 rows) postgres=#

这说明,不带引号的表名,无论大写还是小写,都是一回事。

进一步的实验,可以验证此看法。

postgres=# insert into GaoUser values('user001',25);
INSERT 0 1
postgres=# insert into "GaoUser" values('user002',40);
INSERT 0 1
postgres=# select * from GaoUser;
name | age
---------+-----
user001 | 25
(1 row) postgres=# select * from gaouser;
name | age
---------+-----
user001 | 25
(1 row) postgres=# postgres=# select * from "GaoUser";
name | age
---------+-----
user002 | 40
(1 row)
postgres=# insert into GaoUser values('User003',27);
INSERT 0 1
postgres=# select * from GaoUser;
name | age
---------+-----
user001 | 25
User003 | 27
(2 rows) postgres=# insert into "GaoUser" values('User004',42);
INSERT 0 1
postgres=# select * from "GaoUser";
name | age
---------+-----
user002 | 40
User004 | 42
(2 rows) postgres=#

[作者 高健@博客园  luckyjackgao@gmail.com]
回到上一级页面:PostgreSQL基础知识与基本操作索引页    回到顶级页面:PostgreSQL索引页磨砺技术珠矶,践行数据之道,追求卓越价值

PostgreSQL数据库表名的大小写实验的更多相关文章

  1. Thinkphp5——数据库表名的大小写问题

    ThinkPHP5中数据库的表名如果是驼峰命名法,会被转换成小写加下划线,解决方法如下: 1.表名全部小写,因为数据库的表名区分大小写的. 2.使用Db::table("表名"), ...

  2. Spring Boot + JPA(hibernate 5) 开发时,数据库表名大小写问题

      (转载)Spring Boot + JPA(hibernate 5) 开发时,数据库表名大小写问题   这几天在用spring boot开发项目, 在开发的过程中遇到一个问题hibernate在执 ...

  3. (转)mysql数据库表名批量修改大小写

    由于不用服务器对mysql的表名的大小写敏感要求不一致,经常在出现线上的数据库down到了本地不能运行的情况,贴出一段代码用来批量修改数据库表名大小写. DELIMITER // DROP PROCE ...

  4. mysql linux下表名忽略大小写注意事项

    在Unix中使用lower_case_tables_name=0,在Windows中使用lower_case_tables_name=2.这样了可以保留数据库名和表名的大小写.不利之处是必须确保在Wi ...

  5. SQL查询数据库信息, 数据库表名, 数据库表信息

    SQL查询数据库信息, 数据库表名, 数据库表信息 ---------------------------------------------- -- 以下例子, 在sql_server 中可以直接运 ...

  6. EF 控制code-first生成的数据库表名的单复数

    原地址:https://blog.csdn.net/winnyrain/article/details/51248410 在Code-First中,默认生成的数据库表的名称为类型的复数形式,如Mode ...

  7. myssql数据库表名转驼峰 - PLAY - ITeye博客

    原文:myssql数据库表名转驼峰 - PLAY - ITeye博客

  8. MySQL中将数据库表名修改成大写的存储过程

    原文:MySQL中将数据库表名修改成大写的存储过程 MySQL中将数据库表名修改成大写的存储过程 创建存储过程的代码: DROP PROCEDURE IF EXISTS uppercaseTablen ...

  9. Linux下MySQL报Table 'xxx' doesn't exist错误解决方法,表名存在大小写区分

    Linux服务器上在线装了个MySQL,但是部署web应用时一直报后台一直报错:Table 'xxx' doesn't exist. 本地测试一直都是正常的,同样的代码,同样的数据库,表是存在的,但是 ...

随机推荐

  1. linux 局域网探测工具nmap

    NMap,也就是Network Mapper,是Linux下的网络扫描和嗅探工 具包,其基本功能有三个, 一是探测一组主机是否在线: 其次是扫描主机端口,嗅探所提供的网络服务: 还可以推断主机所用的操 ...

  2. ORACLE RAC clusterware/GI 启动诊断流程图11.2+

  3. windows server 2016部署服务

          绪论 有时候,如果安装系统数量比较多,而且数量较多,人工使用U盘或者光盘安装,效率较低,通过网络可以批量安装. 还可以做到无人安装. PXE PXE(preboot execute env ...

  4. 18年11月5日 NOIP模拟赛

    T1 题解 对于k=100的情况,贪心 对于100%的数据 可以发现,当前的决策只对后面的开采有影响,且剩余耐久度与之后的开采收益成正比,如果倒着考虑这个问题,得出i-n的星球1点耐久度所能获得的最大 ...

  5. SPL 笔记

    PHP  SPL是指 standard  php library,php标准库. SPL提供了一系列的类和接口,使用这些类和接口,我们可以更加高效.优雅的使用php进行程序设计.   从php5.0开 ...

  6. BZOJ3530:[SDOI2014]数数(AC自动机,数位DP)

    Description 我们称一个正整数N是幸运数,当且仅当它的十进制表示中不包含数字串集合S中任意一个元素作为其子串.例如当S=(22,333,0233)时,233是幸运数,2333.20233.3 ...

  7. android scheme打开天猫,淘宝

    直接上代码 Intent intent = new Intent(); intent.setAction("android.intent.action.VIEW"); /* Str ...

  8. 【转】iOS - SQLite 数据库存储

    本文目录 1.SQLite 数据库 2.iOS 自带 SQLite 的使用 3.fmdb 的使用 4.fmdb 多线程操作 5.其他 SQLite 的第三方封装库 回到顶部 1.SQLite 数据库 ...

  9. etcd 删除

    vim /etc/sysconfig/flanneld FLANNEL_ETCD_ENDPOINTS="https://192.168.30.241:2379,https://192.168 ...

  10. hive使用derby的服务模式(可以远程模式)

    hive默认使用的derby的嵌入模式.这个就面临着,无法多个并发hive shell共享的问题. 使用MySQL服务器也可以解决问题,但安装.配置太麻烦了. 可以使用轻量级的derby的c/s服务模 ...