导航:首页 > 编程语言 > javasql获取字段的类型

javasql获取字段的类型

发布时间:2025-07-29 03:27:03

A. java 怎样获取java.sql.date 类型年月日并插入到数据库date类型中

JDBC环境下
如果使用的是ement接口:
String sql = "insert into 表名(date类型的列) values(?)";
PreparedStatement stmt = con.prepareStatement(sql);
stmt.setDate(1, date对象);
stmt.executeUpdate();

如果使用的是Statement接口:
java.text.SimpleDateFormat fmt1 = new java.text.SimpleDateFormat("yyyy-MM-dd"); // mssql、mysql格式
java.text.SimpleDateFormat fmt2 = new java.text.SimpleDateFormat("dd-MM月-yyyy"); // oracle格式

String sql = String.format("insert into 表名(date类型的列) values('%s')", fmt1.format(date对象));
Statement stmt = con.createStatement();
stmt.executeUpdate(sql);

使用Hibernate和myts的确就不用关心类型转换问题了~

B. java如何获得数据库表中各字段的字段名

Java获取数据库的表中各字段的字段名,代码如下:

importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.PreparedStatement;
importjava.sql.ResultSetMetaData;
importjava.sql.SQLException;
publicclassTestDemo{
(){
Connectionconn=null;
try{
Class.forName("com.mysql.jdbc.Driver");
Stringurl="jdbc:mysql://数据库IP地址:3306/数据库名称";
Stringuser="数据库用户名";
Stringpass="数据库用户密码";
conn=DriverManager.getConnection(url,user,pass);
}catch(ClassNotFoundExceptione){
e.printStackTrace();
}catch(SQLExceptione){
e.printStackTrace();
}
returnconn;
}
publicstaticvoidmain(String[]args){
Connectionconn=getConnection();
Stringsql="select*fromAccessType";
PreparedStatementstmt;
try{
stmt=conn.prepareStatement(sql);
ResultSetrs=stmt.executeQuery(sql);
ResultSetMetaDatadata=rs.getMetaData();
for(inti=1;i<=data.getColumnCount();i++){
//获得所有列的数目及实际列数
intcolumnCount=data.getColumnCount();
//获得指定列的列名
StringcolumnName=data.getColumnName(i);
//获得指定列的列值
intcolumnType=data.getColumnType(i);
//获得指定列的数据类型名
StringcolumnTypeName=data.getColumnTypeName(i);
//所在的Catalog名字
StringcatalogName=data.getCatalogName(i);
//对应数据类型的类
StringcolumnClassName=data.getColumnClassName(i);
//在数据库中类型的最大字符个数
intcolumnDisplaySize=data.getColumnDisplaySize(i);
//默认的列的标题
StringcolumnLabel=data.getColumnLabel(i);
//获得列的模式
StringschemaName=data.getSchemaName(i);
//某列类型的精确度(类型的长度)
intprecision=data.getPrecision(i);
//小数点后的位数
intscale=data.getScale(i);
//获取某列对应的表名
StringtableName=data.getTableName(i);
//是否自动递增
booleanisAutoInctement=data.isAutoIncrement(i);
//在数据库中是否为货币型
booleanisCurrency=data.isCurrency(i);
//是否为空
intisNullable=data.isNullable(i);
//是否为只读
booleanisReadOnly=data.isReadOnly(i);
//能否出现在where中
booleanisSearchable=data.isSearchable(i);
System.out.println(columnCount);
System.out.println("获得列"+i+"的字段名称:"+columnName);
System.out.println("获得列"+i+"的类型,返回SqlType中的编号:"+columnType);
System.out.println("获得列"+i+"的数据类型名:"+columnTypeName);
System.out.println("获得列"+i+"所在的Catalog名字:"+catalogName);
System.out.println("获得列"+i+"对应数据类型的类:"+columnClassName);
System.out.println("获得列"+i+"在数据库中类型的最大字符个数:"+columnDisplaySize);
System.out.println("获得列"+i+"的默认的列的标题:"+columnLabel);
System.out.println("获得列"+i+"的模式:"+schemaName);
System.out.println("获得列"+i+"类型的精确度(类型的长度):"+precision);
System.out.println("获得列"+i+"小数点后的位数:"+scale);
System.out.println("获得列"+i+"对应的表名:"+tableName);
System.out.println("获得列"+i+"是否自动递增:"+isAutoInctement);
System.out.println("获得列"+i+"在数据库中是否为货币型:"+isCurrency);
System.out.println("获得列"+i+"是否为空:"+isNullable);
System.out.println("获得列"+i+"是否为只读:"+isReadOnly);
System.out.println("获得列"+i+"能否出现在where中:"+isSearchable);
}
}catch(SQLExceptione){
e.printStackTrace();
}
}
}
阅读全文

与javasql获取字段的类型相关的资料

热点内容
文件名rpm 浏览:1
苹果手机卡设置pin密码忘了怎么办 浏览:100
简单的文件管理系统 浏览:233
微信怎么把文件压缩到桌面 浏览:598
java保存emoji 浏览:410
如何查找压缩文件内容 浏览:565
存款放哪个app 浏览:880
怎么用电脑存文件 浏览:295
会计云课堂文件夹是哪个 浏览:592
悟空分身在哪个文件 浏览:521
如何把文件上的内容移到桌面上 浏览:903
ps导出储存可以分文件夹吗 浏览:740
小米手环3升级字体 浏览:711
coreldraw切割工具 浏览:993
易享惠app怎么用账号密码登陆 浏览:108
学编程和淘宝运营哪个实用 浏览:649
苹果app花呗充值不了 浏览:673
大数据怎么分析你跟谁接触过 浏览:255
软件网站建设多少钱 浏览:730
c程序文件一般放到哪个盘里面 浏览:904

友情链接