JDBC for SQL Server - Herong's Tutorial Examples - v3.14, by Herong Yang
"ALTER TABLE" Statements
This section describes how to alter a table by adding a new column.
When you are adding new features to an existing database application, very often you need to add new columns to some existing tables. This can be done by using the "ALTER TABLE" statement. Here is a sample Java program that adds a new column called "Discount" to the table "Price":
/* AlterTable.java * Copyright (c) HerongYang.com. All Rights Reserved. */ import java.sql.*; public class AlterTable { public static void main(String [] args) { Connection con = null; try { con = DriverManager.getConnection( "jdbc:sqlserver://localhost\\SQLEXPRESS;" + "user=herong;password=T0pSecret;" + "database=AdventureWorks2019"); // Adding a new column to an existing table Statement sta = con.createStatement(); int count = sta.executeUpdate( "ALTER TABLE Herong.Price ADD Discount REAL"); System.out.println("A new column added."); sta.close(); DatabaseMetaData meta = con.getMetaData(); ResultSet res = meta.getColumns(null, null, "Price", null); System.out.println("List of columns: "); while (res.next()) { System.out.println( " "+res.getString("TABLE_SCHEM") + ", "+res.getString("TABLE_NAME") + ", "+res.getString("COLUMN_NAME") + ", "+res.getString("TYPE_NAME") + ", "+res.getInt("COLUMN_SIZE") + ", "+res.getInt("NULLABLE")); } res.close(); con.close(); } catch (Exception e) { e.printStackTrace(); } } }
When you run this program, you should get this output:
herong> java -cp .;mssql-jdbc-9.4.1.jre16.jar AlterTable.java A new column added. List of columns: Herong, Price, ProductID, int, 10, 1 Herong, Price, Price, real, 24, 1 Herong, Price, Currency, char, 3, 1 Herong, Price, Discount, real, 24, 1
Table of Contents
JDBC (Java Database Connectivity) Introduction
Microsoft SQL Server Express Edition
Microsoft JDBC Driver for SQL Server
Microsoft JDBC Driver - Query Statements and Result Sets
Microsoft JDBC Driver - DatabaseMetaData Object
►Microsoft JDBC Driver - DDL Statements
Executing "Update" Statements - executeUpdate()
Microsoft JDBC Driver - DML Statements
SQL Server - PreparedStatement
SQL Server CLOB (Character Large Object) - TEXT
SQL Server BLOB (Binary Large Object) - BLOB
Using Connection Pool with JDBC
JDBC-ODBC Bridge Driver - sun.jdbc.odbc.JdbcOdbcDriver
JDBC-ODBC Bridge Driver - Flat Text Files
JDBC-ODBC Bridge Driver - MS Access