版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wzy0623/article/details/79237961
Spring框架对JDBC的简单封装。提供了一个JDBCTemplate对象简化JDBC的开发
好久没更新了,最近配置json文件的时候发现以前用的excel转json转换器不好用了,上网找了几个都不能满足需求,于是自己用python写了一个。工具不复杂,使用简单,但能满足几乎所有excel转json的要求了,包括多层嵌套,每一层定制为列表或者字典的输出格式,复杂单元格的定制。 转载请注明出处:https://blog.csdn.net/ylbs110/article/details/82755822
DatabaseMetaData 有关整个数据库的信息:表名、表的索引、数据库产品的名称和版本、数据库支持的操作。 ResultSet 关于某个表的信息或一个查询的结果。您必须逐行访问数据行,但是您可以任何顺序访问列。 ResultSetMetaData 有关 ResultSet 中列的名称和类型的信息。 尽管每个对象都有大量的方法让您获得数据库元素的极为详细的信息,但在每个对象中都有几种主要的方法使您可获得数据的最重要信息。然而,如果您希望看到比此处更多的信息,建议您学习文档以获得其余方法的说明。 ResultSet ResultSet 对象是 JDBC 中最重要的单个对象。从本质上讲,它是对一个一般宽度和未知长度的表的一种抽象。几乎所有的方法和查询都将数据作为 ResultSet 返回。ResultSet 包含任意数量的命名列,您可以按名称访问这些列。它还包含一个或多个行,您可以按顺序自上而下逐一访问。在您使用 ResultSet 之前,必须查询它包含多少个列。此信息存储在 ResultSetMetaData 对象中。 //从元数据中获得列数 ResultSetMetaData rsmd; rsmd = results.getMetaData(); numCols = rsmd.getColumnCount(); 当您获得一个 ResultSet 时,它正好指向第一行之前的位置。您可以使用 next() 方法得到其他每一行,当没有更多行时,该方法会返回 false。由于从数据库中获取数据可能会导致错误,您必须始终将结果集处理语句包括在一个 try 块中。 您可以多种形式获取 ResultSet 中的数据,这取决于每个列中存储的数据类型。另外,您可以按列序号或列名获取列的内容。请注意,列序号从 1 开始,而不是从 0 开始。ResultSet 对象的一些最常用方法如下所示。 getInt(int); 将序号为 int 的列的内容作为整数返回。 getInt(String); 将名称为 String 的列的内容作为整数返回。 getFloat(int); 将序号为 int 的列的内容作为一个 float 型数返回。 getFloat(String); 将名称为 String 的列的内容作为 float 型数返回。 getDate(int); 将序号为 int 的列的内容作为日期返回。 getDate(String); 将名称为 String 的列的内容作为日期返回。 next(); 将行指针移到下一行。如果没有剩余行,则返回 false。 Close(); 关闭结果集。 getMetaData(); 返回 ResultSetMetaData 对象。 ResultSetMetaData 您使用 getMetaData() 方法从 ResultSet 中获取 ResultSetMetaData 对象。您可以使用此对象获得列的数目和类型以及每一列的名称。 getColumnCount(); 返回 ResultSet 中的列数。 getColumnName(int); 返回列序号为 int 的列名。 getColumnLabel(int); 返回此列暗含的标签。 isCurrency(int); 如果此列包含带有货币单位的一个数字,则返回 true。 isReadOnly(int); 如果此列为只读,则返回 true。 isAutoIncrement(int); 如果此列自动递增,则返回 true。这类列通常为键,而且始终是只读的。 getColumnType(int); 返回此列的 SQL 数据类型。这些数据类型包括 BIGINT BINARY BIT CHAR DATE DECIMAL DOUBLE FLOAT INTEGER LONGVARBINARY LONGVARCHAR NULL NUMERIC OTHER REAL SMALLINT TIME TIMESTAMP TINYINT VARBINARY VARCHAR DatabaseMetaData DatabaseMetaData 对象可为您提供整个数据库的信息。您主要用它获取数据库中表的名称,以及表中列的名称。由于不同的数据库支持不同的 SQL 变体,因此,也有多种方法查询数据库支持哪些 SQL 方法。 getCatalogs() 返回该数据库中的信息目录列表。使用 JDBC-ODBC Bridge 驱动程序,您可以获得用 ODBC 注册的数据库列表。这很少用于 JDBC-ODBC 数据库。 getTables(catalog, schema,tableNames, columnNames) 返回表名
⚠️注意:上面两张表,在数据库层面,并未建立外键关联,所以无法保证数据的一致性和完整性。
MySQL 数据库学习 MySQL数据库软件 安装 … 配置 MySQL服务启动 手动。 cmd–> services.msc 打开服务的窗口 使用管理员打开cmd net start mysql //启动mysql的服务 net stop mysql //关闭mysql服务 MySQL登录 mysql -uroot -p密码 mysql -hip -uroot -p连接目标的密码 mysql --host=ip --user=root --password=连接目标的密码 MySQL退出 exit qu
切片操作是访问序列中元素的另一种方法,可以访问一定范围内的元素 实现切片操作的语法格式:sname[start:end:step] 参数说明如下: sname:序列的名称 start:切片的开始位置(不指定默认为0) end:切片的结束位置(不指定默认为序列的长度) step:切片的步长(如果省略默认为1,当忽略步长时,最后一个冒号也可以省略)
MySQL约束 (一) 概念 约束:对表中的数据进行限定,保证数据的正确性、有效性和完整性。 分类: 1. 主键约束:primary KEY 2. 非空约束:not NULL 3. 唯一约束:unique 4. 外键约束:foreign KEY (二) 约束详解 (1) 非空约束 -- 语法 not null,值不能为null -- 1. 创建表时添加约束 CREATE TABLE stu( id INT, NAME VARCHAR(20) NOT
对于Greenplum Database 4.2及更高版本,gptransfer实用程序
事务四大特性 原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)
概述 AgileEAS.NET平台提供了自己的报表设计器,并且把报表和平台集成在一起,开发人员可以使用独立的报表设计器设计好报表之后导入到AgileEAS.NET平台中,也可以Agi
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wzy0623/article/details/79205296
正常我们在使用python爬虫时候,尤其在用python开发时,想要基于匹配项将子列表串联成一个列表,我们可以使用列表推导式或循环来实现,这两种方法都可以根据匹配项将子列表串联成一个列表。请根据你的实际需求选择适合的方法。具体情况请看我下面分析。
序列 指的是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通过每个值所在位置的编号(称为索引)访问它们。
1.概念:约束作用于表中字段上的规则,用于限制存储在表中的数据 2.目的:保证数据库中数据的正确、有效性和完整性 3.分类
之前我们介绍的检查工作表是否存在的VBA代码,都是利用了VBA的错误处理,而本文将介绍一种判断工作表是否存在的特别方法,在VBA代码中使用Evaluate。
HBase ACL 可以实现不同的用户、Group与Namespace、Table、ColumnFamily层级的数据权限控制
索引相当于数据表的目录,其优点是可以提高检索数据的速度,但同时也增加了系统维护工作,以及会减慢写入速度。
string function1(int param1, string param2, …)
openpyxl是一个强大的Python库,用于读写Excel(xlsx/xlsm/xltx/xltm)文件。
约束,是对表中的数据进行限定,保证数据的正确性、有效性和完整性,约束分为以下几类:
SQL常用的语法 本文主要分享SQL日常使用过程中常用的语法样式。 在sql语句中,主要的关键词有SELECT、INSERT、UPDATE、DELETE、ALERT、DROP、CREATE、USE、SHOW,并用;作为语句的结束。 查询语法 SELECT 列名称1, 列名称2 ... 列名称N FROM 表名; 对指定字段去重复,即只查询不重复的数据,关键词: DISTINCT SELECT DISTINCT 列名称1, 列名称2 ... 列名称N FROM 表名; 按条件查询,关键词:where
DDL操作数据库、表 1. 操作数据库:CRUD 创建(Create) 创建数据库:
a. 找到MySql解压好的文件夹的根目录,在根目录下创建文件 my.ini(后缀为.ini)
提示我写错了,仔细看一看,原来是auto_increment被我少写了一个e。
库 DB SHOW DATABASES 数据库列表 USE 库名 切换/使用某数据库 CREATE DATABASE 库名 创建新库 DROP DATABASE 库名 删除库 表 TABLE show TABLES 表列表 CREATE TABLE 表名( 列名 数据类型 .... ) 创建表 DROP TABLE 表名 删除表 SELECT * FROM 表名 查看表数据 INSERT INTO 表名 (列名 ...) VALUES (数据 ...) 插入数据 INSERT INTO USER
如果指定的类名不存在,或者指定的字母大小写不正确,则跳过该类名,命令继续清除列表中的下一个缓存查询; 对于无效的类名,不会执行任何操作,也不会生成任何错误。 如果指定的表没有任何关联的缓存查询,或者该表不存在,则不执行任何操作,也不会产生错误。
注意:目前上述的俩张表,在数据库层面并未建立外键关联,无法保证数据的一致性和完整性 的。
1.下载zip安装包,解压,重命名为mysql,移动到你想要的地方2.配置环境变量把bin目录加到path变量中去...
ALTER VIEW命令用于修改视图。 视图基于由SELECT语句或由两个或多个SELECT语句组成的UNION组成的查询的结果集。
系统自动维护已准备好的SQL语句(“查询”)的缓存。这允许重新执行SQL查询,而无需重复优化查询和开发查询计划的开销。缓存查询是在准备某些SQL语句时创建的。准备查询发生在运行时,而不是在编译包含SQL查询代码的例程时。通常,PREPARE紧跟在SQL语句的第一次执行之后,但在动态SQL中,可以准备查询而不执行它。后续执行会忽略PREPARE语句,转而访问缓存的查询。要强制对现有查询进行新的准备,必须清除缓存的查询。
CREATE VIEW命令定义视图的内容。定义视图的SELECT语句可以引用多个表,也可以引用其他视图。
今天的命令操作是基于某个数据库而言的,也就是说要先进入到某个数据库,使用命令use 数据库名称,例如 use ljydb; 1.创建数据表 Create table 表名(字段名 字段类型 约束类型) 按照以上格式创建数据表,注意一定要使用英文输入法下的符号,每个关键词后有一个空格。 举例创建用户表ljy_userinfo Create table ljy_userinfo ( userid int(11), username varchar(20), password varchar(20), Create_time datetime ) 以上代码创建了用户信息表ljy_userinfo,字段分别为用户编号,用户名称,密码,创建时间。 创建完成后使用show tables;查看数据库中的表 我们也可以使用命令desc table 表名称 来查看创建的数据表的列。
可以通过定义表(使用CREATE TABLE)或通过定义投影到表的持久类来创建表:
1.关于表 表示数据库存储数据的基本单位。一个表可以包含若干个字段或者是记录。表的操作包括创建表、修改表、删除表。创建数据表的过程是规定数据列的属性的过程,同时也是实施数据完整性约束的过程。 1.创建表: 数据表属于数据库,在创建数据表之前,应该使用“USE <数据库名>”移动到指定的数据库下。 如果没有选择数据库,创建表时会报错; 创建表的语法: CREATE TABLE table_name ( 字段1 数据类型 [完整性约束条件], 字段2 数据类型 [完整性约束条件], … );
这是在forum.ozgrid.com中找到的一个Excel工具,可以分析并列出指定工作簿中应用的数据验证。
添加了外键约束之后,我们再到dept表(父表)删除id为1的记录,然后看一下会发生什么现象。此时将会报错,不能删除或更新父表记录,因为存在外键约束。
学过orm系统自然之道模型的重要性,很多web站点都需要与数据库交互,这个时候模型的设计就显得尤为重要,一个好的模型会使得项目方便管理并且易于维护,比如我们学过的flask,里面的sqlalchemy就是这样一个优秀的模块,通过它可以快速和数据库建立通道,从而使得web编程更为高效,本文主要讲解django的模型。
符号规定:下面展示一些定义的时候,为简便理解,使用中文配合符号表述(会有具体举例,不用担心理解不了)
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wzy0623/article/details/79227278
一、数据类型 MySQL中定义数据字段的类型对你数据库的优化是非常重要的。 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 1)字符类型:char varchar text blob char:定长 varchar:可变长度 2)数值类型:int bigint float decimal int: int/integer bigint: long/BigInteger float: 成绩,不适合存储
– 查询姓名中包含德的人 SELECT * FROM student WHERE NAME LIKE ‘%德%’;
这个SQL语句列表为每个表提供了SQL查询和其他操作的记录,包括插入、更新和删除。 这些SQL语句链接到一个查询计划,该链接提供冻结该查询计划的选项。
作为快速入门Redis系列的第二篇博客,本篇为大家介绍的是Redis的数据类型。 码字不易,先赞后看!
DQL:查询语句 1. 排序查询 * 语法:order by 子句 * order by 排序字段1 排序方式1 , 排序字段2 排序方式2... * 排序方式: * ASC:升序,默认的。 * DESC:降序。 * 注意: * 如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件。 2. 聚合函数:将一列数据作为一个整体,进行纵向的计算。 1. count:计算个数 1. 一般选
MYSQL中约束及修改数据表 28:约束 约束保证数据的完整性和一致性 约束分为表级约束和列级约束 约束类型包括: NOT NULL(非空约束) PRIMARY KEY(主键约束)
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wzy0623/article/details/79217198
在为字段添加约束时,我们只需要在字段之后加上约束的关键字即可,需要关注其语法。我们执行上面的SQL把表结构创建完成,然后接下来,就可以通过一组数据进行测试,从而验证一下,约束是否可以生效。
领取专属 10元无门槛券
手把手带您无忧上云