java怎么插入oracle数据库timenstamp,Sybase数据库技术,数据库恢复专家
在oracle的sqlplus中有一个命令:desc,能够简要的显示基表、视图等的结构。desc的显示结果简单明了,比较实用。虽然在Sybase ASE中的存储过程sp_help也能实现查看表结构的目的;但是,显示结果很多尤其换行混乱,让人看得眼花缭乱。显示的存储过程:sp_desc能够实现oracle的sqlplus中desc相同的功能,仅仅多了一列:列序号。
效果图如下:
存储过程sp_desc的语法如下:
------=================================================================================
use sybsystemprocs
go
if exists(select 1 from sybsystemprocs.dbo.sysobjects where type="P" and name="sp_desc")
drop proc sp_desc
go
create procedure sp_desc
@tablename varchar(128)
as
declare @table_id int
declare @char_bin_types varchar(30)
set nocount on
begin
select @char_bin_types = char(47)+char(39)+char(45)+char(37)+char(35)+char(34)
select @table_id = object_id(@tablename)
select
"序号"=convert(varchar(3),colid),
"列名"=convert(varchar(30),column_name),
"是否为空?"=convert(varchar(7),nullable),
"类型"=convert(varchar(30),
(case scale
when NULL then
case
when charindex(type_name,",ubigint,tinyint,usmallint,uintn,floatn,smallmoneyn,daten,timen,real,bit,sysname,text,image,smalldatetime,real,longsysname,timestamp,datetimn") > 0 then type_name
else
type_name+"("+convert(varchar,precision)+")"
end
when 0 then
case
when charindex(type_name,",ubigint,tinyint,usmallint,uintn,floatn,smallmoneyn,daten,timen,real,bit,sysname,text,image,smalldatetime,real,longsysname,timestamp,datetimn") > 0 then type_name
else
type_name+"("+convert(varchar,precision)+","+convert(varchar,scale)+")"
end
else
case
when charindex(type_name,",ubigint,tinyint,usmallint,uintn,floatn,smallmoneyn,daten,timen,real,bit,sysname,text,image,smalldatetime,real,longsysname,timestamp,datetimn") > 0 then type_name
else
type_name+"("+convert(varchar,precision)+","+convert(varchar,scale)+")"
end
end
)
)
from
(
SELECT /* INTn, FLOATn, DATETIMEn and MONEYn types */
colid = c.colid,
column_name = c.name,
nullable = /* set nullability from status flag */
(case convert(smallint, convert(bit, c.status&8)) when 0 then "NOT NULL" else "" end),
type_name = rtrim(substring(isnull(stuff(d.type_name,
(c.status&128)/128,
char_length(d.type_name),
"numeric identity"), d.type_name),
1+isnull(d.aux,
ascii(substring("III<<
2*(d.ss_dtype%35+1)+2-8/c.length,
1))-60), 18)),
"precision" = isnull(convert(int, c.prec),
isnull(convert(int, d.data_precision),
convert(int,c.length)))
+isnull(d.aux, convert(int,
ascii(substring("???AAAFFFCKFOLS",
2*(d.ss_dtype%35+1)+2-8/c.length,1))-60)),
scale = isnull(convert(smallint, c.scale),
convert(smallint, d.numeric_scale))
+convert(smallint,
isnull(d.aux,
ascii(substring("<<<<<<<<<<<<<",
2*(d.ss_dtype%35+1)+2-8/c.length,
1))-60))
FROM
syscolumns c,
sysobjects o,
sybsystemprocs.dbo.spt_datatype_info d,
systypes t
WHERE
o.id = @table_id
AND c.id = o.id
AND c.usertype = t.usertype
AND t.type = d.ss_dtype
AND d.ss_dtype IN (111, 109, 38, 110, 43) /* Just *N types */
AND c.usertype < 100 /* No user defined types */
UNION
SELECT /* All other types including user data types */
colid = c.colid,
column_name = c.name,
nullable = /* set nullability from status flag */
(case convert(smallint, convert(bit, c.status&8)) when 0 then "NOT NULL" else "" end),
type_name = rtrim(substring(isnull(stuff(d.type_name,
(c.status&128)/128,
char_length(d.type_name),
"numeric identity"), d.type_name),
1+isnull(d.aux,
ascii(substring("III<<
2*(d.ss_dtype%35+1)+2-8/c.length,
1))-60), 18)),
"precision" = isnull(convert(int, c.prec),
isnull(convert(int, d.data_precision),
convert(int,c.length)))
+isnull(d.aux, convert(int,
ascii(substring("???AAAFFFCKFOLS",
2*(d.ss_dtype%35+1)+2-8/c.length,1))-60)),
scale = isnull(convert(smallint, c.scale),
convert(smallint, d.numeric_scale)) +
convert(smallint, isnull(d.aux,
ascii(substring("<<<<<<<<<<<<<",
2*(d.ss_dtype%35+1)+2-8/c.length,
1))-60))
FROM
syscolumns c,
sysobjects o,
sybsystemprocs.dbo.spt_datatype_info d,
systypes t
WHERE
o.id = @table_id
AND c.id = o.id
AND c.usertype = t.usertype
AND t.type = d.ss_dtype
AND (d.ss_dtype NOT IN (111, 109, 38, 110, 43) /* No *N types */
OR c.usertype >= 100) /* User defined types */
) a
ORDER BY colid
end
go
------=================================================================================
存储过程sp_desc的语法请 :下载
java怎么插入oracle数据库timenstamp,Sybase数据库技术,数据库恢复专家相关推荐
- java代码读取dbsequence的值_JDBC读取新插入Oracle数据库Sequence值的5种方法
//公共代码:得到数据库连接 public Connection getConnection() throwsException{ Class.forName("oracle.jdbc.dr ...
- JDBC读取新插入Oracle数据库Sequence值的5种方法
Oracle的sequence实现非常灵活,所以也带来一些易用性问题,如何取到新插入记录生成的sequence值与其它数据库有较大差别,本文详国介绍了5种实现读取新插入记录sequence值的方法. ...
- java代码连接oracle数据库连接_在JAVA中连接Oracle数据库(例子)
* TODO 要更改此生成的文件的模板,请转至 * 窗口 - 首选项 - java - 代码样式 - 代码模板 */ package person.fane.test; import java.sql ...
- Java 批量插入数据到数据库(MySQL)中
实现Java批量插入数据库数据: package Proxy;import java.io.BufferedReader; import java.io.File; import java.io.Fi ...
- java mysql插入数据乱码_java向mysql数据库插入数据显示乱码的问题
在做一个java web工程时,有时会碰到在向数据库添加数据库时,结果出现乱码"???"的问题.针对该问题的主要解决办法就是: 一.确保是否添加了字符集过滤器: 在java web ...
- java ora-12505_JDBC连接Oracle数据库时出现的ORA-12505错误及解决办法
转载至http://www.blogjava.net/itspy/archive/2007/12/20/169072.html Oracle 问题描述: 今天使用jdbc连接oracle 10.2.0 ...
- Oracle 9i 10g编程艺术-深入数据库体系结构——第6章:锁
第6章 锁 开发多用户.数据库驱动的应用时,最大的难点之一是:一方面要力争取得最大限度的并发访问,与此同时还要确保每个用户能以一致的方式读取和修改数据.为此就 ...
- Sybase数据库技术,数据库恢复---分享Sybase数据库知识(博客文章索引@51cto)
Sybase数据库技术,数据库恢复 分享Sybase数据库知识 博客文章列表,更新时间:2014-12-14 Sybase数据库技术,数据库恢复 站点地图 最新文章 ASE使用with ignore_ ...
- Sybase数据库技术,数据库恢复---分享Sybase数据库知识(博客文章索引)
Sybase数据库技术,数据库恢复 分享Sybase数据库知识 博客文章列表,更新时间:20141218 Sybase数据库技术,数据库恢复 » 站点地图 最新文章 ASE使用with ignore_ ...
最新文章
- HTML基础部分(1)字体,照片,链接
- 中海达ihand30手簿使用说明_如何使用RTK手簿求坐标转换参数(四参数/七参数)...
- QT5.11 + VS2017 环境搭建
- [工具库]JOJSONBuilder工具类——一键把多个bean对象数据转换为JSON格式数据
- 两个股市真理之间的矛盾
- 《JavaSE基础教程》电子版书正式发布,欢迎大家下载
- tomcat构建及session保持
- 《神经网络和深度学习》系列文章七:实现我们的神经网络来分类数字(上)...
- 华数工业机器人教学视频_华数工业机器人教材学习
- 对C#Chart控件使用整理
- 通过cmd上传文件ftp服务器,通过cmd完成FTP上传文件操作
- Lottie动画的优劣及原理
- 数据库SQL 某字段按首字母排序
- 《沈剑架构师训练营》第5章 - 数据库架构
- 计算机勾兑双绝是谁发明,勾兑是什么?
- 【Java】文如何制作帮助文档
- 从孙子兵法看企业价值观和企业文化
- c++入门必学算法 并查集
- 批量地导入本地的scholar.enw到endnote
- 杨氏双缝与等倾干涉实验Matlab仿真
热门文章
- SAP Spartacus的OccCmsPageNormalizer
- Spring Beans 自动装配
- SAP BOPF和Spring框架里加了注解的控制器是如何被调用的
- SAP UI5 control id generation by jQuery
- 使用Chrome的inspect element注意事项
- 如何修改Fiori Launchpad里Tile count 调用的时间间隔
- how does gateway framework treat default system flag in customizing
- 如何调试SAP CRM产品主数据应用后台ABAP端抛出的错误消息
- ABAP enablement in Sublime Text
- transport request 实现原理