存档
在sqlplus中,desc后面跟上表名,能够显示简要的表创建语法。
下面的SQL语句能够实现类似sqlplus中desc的类似的功能。
select o.obj#,o.name object_name,c.column_id,c.column_name,c.data_type,c.data_length,c.data_precision,c.data_scale,c.nullable
from sys.tab$ t,dba_tab_cols c,sys.obj$ o,sys.user$ u
where o.obj#=t.obj#
and o.name=c.table_name
and c.owner=u.name
and o.owner#=u.user#
and u.name='SCOTT'
and o.name='EMP'
order by obj#,column_id
;
PowerDesign是Sybase推出的主打数据库设计工具。PowerDesign致力于采用基于Entiry-Relation的数据模型,分别 从概念数据模型(Conceptual Data Model)和物理数据模型(Physical Data Model)两个层次对数据库进行设计。概念数据模型描述的是独立于数据库管理系统(DBMS)的实体定义和实体关系定义。物理数据模型是在概念数据模型 的基础上针对目标数据库管理系统的具体化。
PowerDesigner 15下载地址:http://download.sybase.com/eval/PowerDesigner/PowerDesigner15_Evaluation.exe
库文件:
http://download.sybase.com/eval/PowerDesigner/PowerDesigner15_Library
PowerDesigner15.1破解补丁下载:
http://www.ali8ba.com/upfiles/pdflm15.rar
PowerDesigner 12.5下载地址:http://download.sybase.com/eval/PowerDesigner/powerdesigner125_eval.exe
PowerDesigner12.5破解补丁下载:
http://blogimg.chinaunix.net/blog/upfile2/080619224716.zip
破解方法:
下载 PowerDesigner12.5 后有一个 license.lic 和 pdflm12.dll 两个文件,license.lic 是用于破解序号的,pdflm12.dll 是用于替换原来安装后的文件,破解首先用 pdflm12.dll 替换安装要目录的 pdflm12.dll 文件,然后在PD的菜单中找到 Tools ==>> License Parameters ==>> 选第一个,然后先load找到 下载的 license.lic 文件,重启即破解完成。
前面有篇文章中,介绍利用游标和sp_spaceused来查看数据库内所有表占用的空间,并倒序排序。
统计SQL SERVER数据库内所有表占用空间并排序
下面介绍另外一种方法:利用sp_MSforeachtable替代游标来实现上篇文章中的类似功能。
use ossdb
go--------查看所有表空间使用情况
CREATE TABLE #T(
name nvarchar(256),
rows varchar(11),
reserved varchar(18),
data varchar(18),
index_size varchar(18),
unused varchar(18)
)EXEC sp_MSforeachtable "INSERT #T EXEC sp_spaceused '?'"
SELECT * FROM #T ORDER BY Convert(int,SubString(data,1,Len(data)-3)) DESC
drop table #T
go
测试通过,将ossdb改成用户数据库名字即可。
把从Sybase或其它类型数据库导出的文本文件再次导入到sybase数据库的时候,bcp是个很好的工具。
本博客已有3篇关于bcp的文章:
如果要用bcp导入很多的表,对每一个表都要写一条语句是件很费劲的事情,尤其表数量很多的时候。简单的方法呢?
第一种方法: 利用SQL语句
在bcp out导出数据的时候,也就是生成相应的bcp out命令语句的时候,也同时生成bcp in导入的命令语句。
生成导出语句的SQL为:
select "bcp "+db_name()+"."+user_name(uid)+"."+name+" out /tmp/databcpout/" +name+ ".txt -Usa -P<sa_passwd> -S<server_name> -c -T10000000 " from sysobjects where type='U' order by name
其中: 将<sa_passwd>,server_name> 分别替换成sa的密码和数据库服务器名。或者用对想要导出的表有查询权限的用户也行。
Sybase ASE自版本15.0.2开始增加判断字符串是否为日期类型的函数:isdate,以及判断字符串是否为数字类型的函数:isnumeric
函数:isdate
Syntax
isdate(character_expression)
Parameters
character_expression
is a character-type variable, constant expression, or column name.
Usage
Returns 1 if the expression is a valid datetime value; returns 0 if it is not. Returns 0 for NULL input.
在solaris系统中,tar命令中排除指定目录和文件的参数与linux中tar命令不同。
在solaris 10中,可以这么用。
比如:我想打开目录/sybase到/tmp/sybase.tar,排除目录/sybase下的两个文件:EBF17156.tar和
cd /sybase
echo /sybase/EBF17156.tar > excludefile
echo /sybase/ase1503_solsparc64_2.tar >> excludefile
tar cvfX /tmp/sybase.tar excludefile /sybase
Java数据库连接(JDBC)由一组用 Java 编程语言编写的类和接口组成。JDBC 为工具/数据库开发人员提供了一个标准的 API,使他们能够用纯Java API 来编写数据库应用程序。然而各个开发商的接口并不完全相同,所以开发环境的变化会带来一定的配置变化。本文主要集合了不同数据库的连接方式。
一、连接各种数据库方式速查表
下面罗列了各种数据库使用JDBC连接的方式,可以作为一个手册使用。
1、Oracle8/8i/9i数据库(thin模式)
Java代码
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);
2、DB2数据库
Java代码
Class.forName("com.ibm.db2.jdbc.app.DB2Driver").newInstance();
String url="jdbc:db2://localhost:5000/sample"; //sample为你的数据库名
String user="admin";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
演示在用java连接SQL Server数据库。用了一个简单的java程序作试验。
第一步:获得jdbc for SQL Server驱动程序
sqljdbc.jar 和 sqljdbc4.jar sqljdbc_auth.dll
为了支持向后兼容以及可能的升级方案,JDBC Driver 2.0 在每个安装包中都包括 2 个 JAR 类库:sqljdbc.jar 和 sqljdbc4.jar。
JAR | 说明 |
---|---|
sqljdbc.jar |
sqljdbc.jar 类库提供对 JDBC 3.0 的支持。 sqljdbc.jar 类库要求使用 5.0 版的 Java 运行时环境 (JRE)。连接到数据库时,在 JRE 6.0 上使用 sqljdbc.jar 会引发异常。 注意: JDBC Driver 2.0 不支持 JRE 1.4。使用 JDBC Driver 2.0 时必须将 JRE 1.4 升级至 JRE 5.0 或更高版本。在某些情况下,您可能需要重新编译应用程序,因为它可能与 JDK 5.0 或更高版本不兼容。有关详细信息,请参阅 Sun Microsystems 网站上的文档。
|
sqljdbc4.jar |
sqljdbc4.jar 类库提供对 JDBC 4.0 的支持。它不仅包括 sqljdbc.jar 的所有功能,还包括新增的 JDBC 4.0 方法。 sqljdbc4.jar 类库要求使用 6.0 或更高版本的 Java 运行时环境 (JRE)。在 JRE 1.4 或 5.0 上使用 sqljdbc4.jar 会引发异常。 注意: 如果应用程序必须在 JRE 6.0 上运行,即使该应用程序不使用 JDBC 4.0 功能,也应使用 sqljdbc4.jar。
|
请注意,尽管驱动程序旨在与所有主要的 Sun 等效 Java 虚拟机一起工作并由这些虚拟机支持,但却是在 Sun JRE 5.0 或更高版本上进行测试的。
注意:JRE6的要选择sqljdbc4.jar
第二步:设置环境变量CLASSPATH
将下载下来的sqljdbc.jar或sqljdbc4.jar放到目录d:\shared\lib下。将环境变量CLASSPATH设置为:D:\shared\lib\sqljdbc.jar
set CLASSPATH=.;d:\shared\lib\sqljdbc.jar;
(注意:第一个“.”,这个代表当前目录。)
第三步:编写一段简单的java程序。
下面的这段程序使用驱动sqljdbc.jar连接SQL Server 2005数据库,并提取master数据库中的用户表的ID和name两列信息。
SQL Server 2005服务器在本机,端口为1433。登录sa的密码为:secret
执行:select id,name,crdate from dbo.sysobjects where type='U' 这条语句返回当前数据库(这可在url中指定!)中的用户表的id和name列。