Hi,
PFA patch to fix the issue user was not able to insert new row in the table
via 'view data' if the PK is in capital letters.
--
Regards,
Murtuza Zabuawala
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
diff --git a/web/pgadmin/tools/sqleditor/__init__.py
b/web/pgadmin/tools/sqleditor/__init__.py
index 74bc4d1..6db814c 100644
--- a/web/pgadmin/tools/sqleditor/__init__.py
+++ b/web/pgadmin/tools/sqleditor/__init__.py
@@ -529,12 +529,17 @@ def start_query_tool(trans_id):
trans_id: unique transaction id
"""
- sql = extract_sql_from_network_parameters(request.data, request.args,
request.form)
+ sql = extract_sql_from_network_parameters(
+ request.data, request.args, request.form
+ )
- return StartRunningQuery(blueprint, current_app).execute(sql, trans_id,
session)
+ return StartRunningQuery(blueprint, current_app).execute(
+ sql, trans_id, session
+ )
-def extract_sql_from_network_parameters(request_data, request_arguments,
request_form_data):
+def extract_sql_from_network_parameters(request_data, request_arguments,
+ request_form_data):
if request_data:
sql_parameters = json.loads(request_data, encoding='utf-8')
if type(sql_parameters) is str:
@@ -741,15 +746,17 @@ def poll(trans_id):
typname == 'character varying'
):
typname = typname + '(' + \
-
str(col_info['internal_size']) + \
- ')'
+ str(
+ col_info['internal_size']
+ ) + ')'
elif (
typname == 'character[]' or
typname == 'character varying[]'
):
typname = typname[:-2] + '(' + \
-
str(col_info['internal_size']) + \
- ')[]'
+ str(
+ col_info['internal_size']
+ ) + ')[]'
col_info['type_name'] = typname
diff --git a/web/pgadmin/tools/sqleditor/command.py
b/web/pgadmin/tools/sqleditor/command.py
index dff8b92..8cc96e0 100644
--- a/web/pgadmin/tools/sqleditor/command.py
+++ b/web/pgadmin/tools/sqleditor/command.py
@@ -533,8 +533,7 @@ class TableCommand(GridCommand):
for each_col in columns_info:
if (
columns_info[each_col]['not_null'] and
- not columns_info[each_col][
- 'has_default_val']
+ not columns_info[each_col]['has_default_val']
):
column_data[each_col] = None
column_type[each_col] =\
@@ -595,8 +594,7 @@ class TableCommand(GridCommand):
"/".join([self.sql_path, 'select.sql']),
object_name=self.object_name,
nsp_name=self.nsp_name,
- pk_names=pk_names.split(",") if pk_names
- else None,
+ primary_keys=primary_keys,
has_oids=has_oids
)
diff --git
a/web/pgadmin/tools/sqleditor/templates/sqleditor/sql/default/select.sql
b/web/pgadmin/tools/sqleditor/templates/sqleditor/sql/default/select.sql
index 45f364a..97329cd 100644
--- a/web/pgadmin/tools/sqleditor/templates/sqleditor/sql/default/select.sql
+++ b/web/pgadmin/tools/sqleditor/templates/sqleditor/sql/default/select.sql
@@ -3,7 +3,7 @@ SELECT {% if has_oids %}oid, {% endif %}* FROM {{
conn|qtIdent(nsp_name, object_
WHERE
{% if has_oids %}
oid = %(oid)s
-{% elif pk_names %}
- {% for pk in pk_names %}
+{% elif primary_keys|length > 0 %}
+ {% for pk in primary_keys %}
{% if not loop.first %} AND {% endif %}{{ conn|qtIdent(pk) }} = %({{ pk
}})s{% endfor %}
{% endif %};