Python寒假第六次高级培训笔记

1.连接数据库

连接数据库的五种方法
方法一
public void method1() throws SQLException {
        Driver driver = new com.mysql.jdbc.Driver();
        String url = "jdbc:mysql://localhost:3306/数据库名";
        Properties properties = new Properties();
        properties.setProperty("user", "用户名");
        properties.setProperty("password", "用户密码");
        Connection conn = driver.connect(url, properties);
    }
方法二
相较于方式一,这里使用反射实例化Driver。

public void method2() throws Exception {
        Class clazz = Class.forName("com.mysql.jdbc.Driver");
        Driver driver = (Driver) clazz.getDeclaredConstructor().newInstance();
        //Class.forName("com.mysql.jdbc.Driver").getDeclaredConstructor().newInstance();
        String url = "jdbc:mysql://localhost:3306/数据库名";
        Properties properties = new Properties();
        properties.setProperty("user", "用户名");
        properties.setProperty("password", "用户密码");
        Connection conn = driver.connect(url, properties);
    }

方法三
用了DriverManager实现数据库的连接。

public void method3() throws Exception {
        Class clazz = Class.forName("com.mysql.jdbc.Driver");
        Driver driver = (Driver) clazz.getDeclaredConstructor().newInstance()
        String url = "jdbc:mysql://localhost:3306/数据库名";
        String user = "用户名";
        String password = "用户密码";
        DriverManager.registerDriver(driver);
        Connection conn = DriverManager.getConnection(url, user, password);
    }

方法四
方法三的简略版,不必显式的注册驱动了。因为在DriverManager的源码中已经存在静态代码块,实现了驱动的注册。

/*
 * 在mysql的Driver实现类中,声明了如下的操作:
 * static {
try {
java.sql.DriverManager.registerDriver(new Driver());
} catch (SQLException E) {
throw new RuntimeException("Can't register driver!");
}
}
 */
public void testConnection4() throws Exception {
        Class.forName("com.mysql.jdbc.Driver");
        String url = "jdbc:mysql://localhost:3306/数据库名";
        String user = "用户名";
        String password = "用户密码";
        Class.forName("com.mysql.jdbc.Driver");
        Connection conn = DriverManager.getConnection(url, user, password);
    }


方法五
我个人觉得第五种最好,因为他实现了代码和数据的分离,如果需要修改配置信息,直接在配置文件中修改,不需要深入代码 ,如果修改了配置信息,省去重新编译的过程。

public void getConnection5() throws Exception {
//1.读取配置文件中的4个基本信息
InputStream is = ConnectionTest.class.getClassLoader().getResourceAsStream("jdbcTes.properties");
Properties pros = new Properties();
pros.load(is);
String user = pros.getProperty("user");
String password = pros.getProperty("password");
String url = pros.getProperty("url");
String driverClass = pros.getProperty("driverClass");
//2.加载驱动
Class.forName(driverClass);
// Class clazz = Class.forName(driverClass);
// Driver driver = (Driver) clazz.newInstance();
// DriverManager.registerDriver(driver);
        //3.获取连接
Connection conn = DriverManager.getConnection(url, user, password);
System.out.println(conn);
}
 

2.创建一张新表

方法一

首先需要双击数据库并连接成功,接下来选择需要存储的数据库位置,右键单击数据库并创建新表,最后为表添加上内容并命名表后保存即可

方法二

sql数据库创建一个表的语法:演示如何创建名为 "Person" 的表,有四个列。列名是:"LastName"、"FirstName"、"Address" 以及 "Age":
 

3.向表中插入一条数据


一.插入单行数据

INSERT INTO Table(ID,Name,Password,Sex) 
VALUES (1,'张仁济','123456','男')

二.插入多行数据
1.第一种方法:通过INSERT SELECT语句将现有表中的数据添加到已存在的表中

INSERT INTO Table(ID,Password,Name)
SELECT ID,Password,Name
FROM Table2

2.第二种方法:通过SELECT INTO语句将现有表中的数据添加到新表中

SELECT Table.ID,Table.password,Table.Name
INTO LiSt
FROM Table

3.第三种方法:通过UNION关键字合并数据进行插入

INSERT INTO Table(ID,Password,Name,Sex)
VALUES(1,'123456789','詹格进','女'),
(2,'123456','张大鹏','男')

4.查询表中的数据

首先,我们利用Select查询一下表中的所有数据,显示在这里我们可以看到。接下来,我们输入关键字,这个关键字就是delete。在关键字紧接着的地方,我们输入表的名称,一定要存在。然后我们输入Where,后面紧跟着条件,这个方法在其他地方使用相同如果SQL语句有多行的,或者有其他不相关的,我们最好框中栽执行。执行后会显示多少数据受影响,我们再次打开我们的表就可以完成操作了。
 

5.更新表中的数据

更新字段:指定要插入/更新的表中的所有字段,表字段列为目标表中所获取的字段,流字段列为输入流中获取的字段。如为新数据时,则将流字段中的值按行集插入到表字段中。如为历史数据,则根据更新列选项判断是否更新此行集中流字段数据到表字段中。为“Y”时更新,为“N”时不更新。注:此列不填则默认为N。点击右侧“获取和更新字段”按钮可获取目标表和输入流中的全部字段。点击“编辑映射”可更快捷的配置表字段和流字段的映射关系。
 

6.删除一张表

首先打开SQL management管理软件 ,选择数据库选项,点击前面的加号打开界面,选中需要更新的数据库名称选中数据库后,点击界面导航栏中的新建查询按钮,打开界面,可以看到界面右侧出现了空白界面和跳动的光标在跳动的光标处,输入SQL 语句:SQL 语句输入完成后,点击界面导航栏中的执行按钮,drop table 表名执行后,可以看到界面中出现界面,表示SQL语句已经执行完成了。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值