SQL经典语句详解:Mssql与Excel实例(第1/2)

0 下载量 75 浏览量 更新于2024-08-31 1 收藏 87KB PDF 举报
本文档提供了经典SQL语句的全面介绍,特别关注于Microsoft SQL Server(Mssql)的相关操作,适用于需要深入理解数据库管理的IT专业人士。由于部分内容不适用于Microsoft Access,所以读者需要注意区分适用的数据库管理系统。 首先,我们讨论了SQL的主要类别: 1. DDL (数据定义语言):这部分包括创建(CREATE DATABASE)、删除(DROP DATABASE)数据库操作,以及如何创建备份(如使用sp_addumpdevice创建备份设备和BACKUP DATABASE命令)。创建新表(CREATE TABLE)是DDL的一部分,包括直接定义新表结构、基于现有表创建新表(如CREATE TABLE tab_new LIKE tab_old或CREATE TABLE tab_new AS SELECT ... FROM tab_old),以及删除表(DROP TABLE)。 2. DML (数据操纵语言):主要关注数据查询、更新(如SELECT, DELETE, UPDATE, INSERT)操作。这些语句用于检索、修改或插入数据,是日常数据库维护的核心。 3. DCL (数据控制语言):这部分涉及到授权(GRANT, REVOKE)权限管理和事务控制(COMMIT, ROLLBACK),确保数据的安全性和一致性。 具体到基础操作,例如添加新列(ALTER TABLE)和调整数据类型,虽然在Mssql中相对直接,但在某些数据库系统(如DB2)中,可能需要谨慎处理,因为列一旦添加,数据类型通常不允许更改。同样,添加或删除主键(ALTER TABLE...ADD/DROP PRIMARY KEY)和创建/删除索引(CREATE INDEX/DROP INDEX)也是关键的数据库优化步骤。 然而,要注意的是,由于文档明确指出其中的一些语句只适用于Mssql,因此在使用这些语句时,务必确保与所使用的数据库系统兼容,避免因平台差异导致的问题。对于那些依赖Microsoft Access的用户,这部分内容可能需要找到相应的Access语法或者进行适配。 这份SQL语句大全为IT人员提供了一套实用的工具,帮助他们更有效地管理SQL Server数据库,但同时也提醒他们在迁移或跨平台操作时,需谨慎处理和调整。

// Java Web应用开发技术教程 // 张庆华 // 清华大学出版社 // 2022年3月第一版 // ver 1.0 // 4.3.3 JDBC访问数据库的基本步骤 // 程序 4-1:JDBC连接数据库基本步骤 package chap4samp; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class Chap4JDBC { public void testJDBC() { Connection dbConn = null; Statement stmt = null; ResultSet rs = null; try { // 1加载驱动程序 String DBDRIVER = "com.mysql.cj.jdbc.Driver";// MySQL Class.forName(DBDRIVER); // 2建立连接 String url = "jdbc:mySql://localhost:3306/javawebdb?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false";// 此条语句在一行,无空格。 String userName = "root"; String password = "123456"; dbConn = DriverManager.getConnection(url, userName, password); // 3创建SQL数据库操作对象 stmt = dbConn.createStatement(); // 4生成SQL语句,在本例中,为了展示JDBC数据库连接和操作,需要用到创建数据表、添加记录、查询记录等几条SQL语句 String createtablesql = "create table studentinfo(stdNo varchar(10) not null,stdName varchar(20),stdAge int(11),stdMajor varchar(255), stdHometown varchar(255),PRIMARY KEY(stdNo))";// 创建表SQL语句 String insertsql = "insert into studentinfo values('2017001','张琴',18,'物流工程','襄阳')";// 添加记录SQL语句 String querysql = "select * from studentinfo";// 查询记录SQL语句 // String deletetablesql="DROP TABLE studentinfo";//删除表SQL语句 // 5执行SQL语句 stmt.executeQuery(createtablesql);// 创建表 stmt.executeQuery(insertsql);// 添加记录,多次运行会提示记录已存在 rs = stmt.executeQuery(querysql);// 查询记录 // 6处理结果集 while (rs.next()) { String stdNo = rs.getString("stdNo"); String stdName = rs.getString("stdName"); int stdAge = rs.getInt("stdAge"); String stdHometown = rs.getString("stdHometown"); System.out.println("学号:" + stdNo + ", 姓名:" + stdName + ", 年龄:" + stdAge + ", 生源地:" + stdHometown); } // stmt.executeUpdate(deletetablesql);//删除表 } catch (Exception e) { e.printStackTrace(); } finally { // 7关闭所有数据库资源 if (rs != null) { try { rs.close(); } catch (SQLException e) { e.printStackTrace(); } } if (stmt != null) { try { stmt.close(); } catch (SQLException e) { e.printStackTrace(); } } if (dbConn != null) { try { dbConn.close(); } catch (SQLException e) { e.printStackTrace(); } } } } public static void main(String[] args) { Chap4JDBC mytest = new Chap4JDBC(); mytest.testJDBC(); } }仍然有错,该怎么修改

2023-06-02 上传