diff --git a/bindings/java/src/org/sleuthkit/datamodel/SleuthkitCase.java b/bindings/java/src/org/sleuthkit/datamodel/SleuthkitCase.java
index 750c6a8bafd2bd7a0714243548cd389890232e2e..897faa2f7f60645819974a15c5d9cfe0f68374e2 100644
--- a/bindings/java/src/org/sleuthkit/datamodel/SleuthkitCase.java
+++ b/bindings/java/src/org/sleuthkit/datamodel/SleuthkitCase.java
@@ -2119,7 +2119,13 @@ private CaseDbSchemaVersionNumber updateFromSchema8dot4toSchema8dot5(CaseDbSchem
 			}
 
 			statement.execute("ALTER TABLE tag_names ADD COLUMN tag_set_id INTEGER REFERENCES tsk_tag_sets(tag_set_id)");
-			statement.execute("INSERT INTO tsk_tag_sets (name) VALUES ('Project VIC (United States)')");
+
+			String insertStmt = "INSERT INTO tsk_tag_sets (name) VALUES ('Project VIC (United States)')";
+			if (getDatabaseType() == DbType.POSTGRESQL) {
+				statement.execute(insertStmt, Statement.RETURN_GENERATED_KEYS);
+			} else {
+				statement.execute(insertStmt);
+			}
 			try (ResultSet resultSet = statement.getGeneratedKeys()) {
 				if (resultSet != null && resultSet.next()) {
 					int tagSetId = resultSet.getInt(1);
diff --git a/bindings/java/src/org/sleuthkit/datamodel/TagName.java b/bindings/java/src/org/sleuthkit/datamodel/TagName.java
index 2994493efed37f88a373eafb6b3663958809551e..e404faeeb36d399690354c181b73467332b6b9df 100644
--- a/bindings/java/src/org/sleuthkit/datamodel/TagName.java
+++ b/bindings/java/src/org/sleuthkit/datamodel/TagName.java
@@ -81,7 +81,7 @@ public static HTML_COLOR getColorByName(String colorName) {
 	private final HTML_COLOR color;
 	private final TskData.FileKnown knownStatus;
 	private final long tagSetId;
-		
+
 	// Clients of the org.sleuthkit.datamodel package should not directly create these objects.
 	TagName(long id, String displayName, String description, HTML_COLOR color, TskData.FileKnown knownStatus, long tagSetId) {
 		this.id = id;
@@ -91,7 +91,7 @@ public static HTML_COLOR getColorByName(String colorName) {
 		this.knownStatus = knownStatus;
 		this.tagSetId = tagSetId;
 	}
-	
+
 	public long getId() {
 		return id;
 	}
@@ -111,7 +111,7 @@ public HTML_COLOR getColor() {
 	public TskData.FileKnown getKnownStatus() {
 		return knownStatus;
 	}
-	
+
 	long getTagSetId() {
 		return tagSetId;
 	}
diff --git a/bindings/java/src/org/sleuthkit/datamodel/TagSet.java b/bindings/java/src/org/sleuthkit/datamodel/TagSet.java
index 3667d52336181bdd957019999d2882f26328b94a..2821aff4d08f8534f93babfa886f1786b114b908 100755
--- a/bindings/java/src/org/sleuthkit/datamodel/TagSet.java
+++ b/bindings/java/src/org/sleuthkit/datamodel/TagSet.java
@@ -34,7 +34,7 @@ public class TagSet {
 	/**
 	 * Construct a TagSet.
 	 *
-	 * @param id		Tag set id value.
+	 * @param id		    Tag set id value.
 	 * @param setName	Name of tag set.
 	 */
 	TagSet(long id, String setName, List<TagName> tagNameList) {
@@ -66,7 +66,7 @@ public List<TagName> getTagNames() {
 
 	/**
 	 * Return the TagSet id.
-	 * 
+	 *
 	 * @return TagSet id value.
 	 */
 	long getId() {
diff --git a/bindings/java/src/org/sleuthkit/datamodel/TaggingManager.java b/bindings/java/src/org/sleuthkit/datamodel/TaggingManager.java
index b44a8f321820c0eddd5b4d5554723e5ab04dd986..0fb319766962749bd598930f19f1b449f4207eeb 100755
--- a/bindings/java/src/org/sleuthkit/datamodel/TaggingManager.java
+++ b/bindings/java/src/org/sleuthkit/datamodel/TaggingManager.java
@@ -25,6 +25,7 @@
 import java.util.Collections;
 import java.util.List;
 import org.sleuthkit.datamodel.SleuthkitCase.CaseDbConnection;
+import static org.sleuthkit.datamodel.TskData.DbType.POSTGRESQL;
 
 /**
  * Provides an API to manage Tags.
@@ -91,8 +92,13 @@ public TagSet addTagSet(String name, List<TagName> tagNames) throws TskCoreExcep
 		skCase.acquireSingleUserCaseWriteLock();
 		try (Statement stmt = connection.createStatement()) {
 			connection.beginTransaction();
-			// INSERT INTO tsk_tag_sets (name) VALUES('%s')
-			stmt.execute(String.format("INSERT INTO tsk_tag_sets (name) VALUES('%s')", name));
+			String query = String.format("INSERT INTO tsk_tag_sets (name) VALUES('%s')", name);
+
+			if (skCase.getDatabaseType() == POSTGRESQL) {
+				stmt.execute(query, Statement.RETURN_GENERATED_KEYS);
+			} else {
+				stmt.execute(query);
+			}
 
 			try (ResultSet resultSet = stmt.getGeneratedKeys()) {
 
@@ -272,13 +278,18 @@ public BlackboardArtifactTagChange addArtifactTag(BlackboardArtifact artifact, T
 			BlackboardArtifactTag artifactTag = null;
 			try (Statement stmt = connection.createStatement()) {
 				Examiner currentExaminer = skCase.getCurrentExaminer();
-				String queryTemplate = "INSERT INTO blackboard_artifact_tags (artifact_id, tag_name_id, comment, examiner_id) VALUES (%d, %d, '%s', %d)";
-
-				stmt.executeUpdate(String.format(queryTemplate,
+				String query = String.format(
+						"INSERT INTO blackboard_artifact_tags (artifact_id, tag_name_id, comment, examiner_id) VALUES (%d, %d, '%s', %d)",
 						artifact.getArtifactID(),
 						tagName.getId(),
 						comment,
-						currentExaminer.getId()));
+						currentExaminer.getId());
+
+				if (skCase.getDatabaseType() == POSTGRESQL) {
+					stmt.execute(query, Statement.RETURN_GENERATED_KEYS);
+				} else {
+					stmt.execute(query);
+				}
 
 				try (ResultSet resultSet = stmt.getGeneratedKeys()) {
 					resultSet.next();
@@ -361,7 +372,11 @@ public ContentTagChange addContentTag(Content content, TagName tagName, String c
 						endByteOffset,
 						currentExaminer.getId());
 
-				stmt.executeUpdate(query);
+				if (skCase.getDatabaseType() == POSTGRESQL) {
+					stmt.executeUpdate(query, Statement.RETURN_GENERATED_KEYS);
+				} else {
+					stmt.executeUpdate(query);
+				}
 
 				try (ResultSet resultSet = stmt.getGeneratedKeys()) {
 					resultSet.next();