转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> SyBase >> 正文
最近一段时间都在弄sybase和ms-sqlserver,写了一份学习笔记         ★★★★

最近一段时间都在弄sybase和ms-sqlserver,写了一份学习笔记

作者:闵涛 文章来源:闵涛的学习笔记 点击数:4204 更新时间:2009/4/22 23:09:38
nbsp;accunetsvr 4400

可知dbserver_name是accunetsvr 
  dbserver_ip    是192.168.0.6
dbserver_port  是4100
dbname为nextip
  url为  jdbc:sybase:Tds:192.168.0.6:4100/nextip
37、 创建identity列,如果是create table 时一定是numeric型。如果想要创建数据库自动为新建的所有表增加一个隐藏的identity字段,用[sp_dboption database_name, "auto identity", "true"]。在检索数据的时候必须隐式加上SYB_IDENTITY_COL作为隐藏的identity列,例如select SYB_IDENTITY_COL, sn_name from t-subnet
默认的隐藏精度大小为10如果用户想要增大其精度,可用[sp_configure  "size of  auto  identity", 新的精度],例如: sp_configure "size of auto identity",15
38、 从select into 创建一个新的idenetity列,这在sql语句分页检索用。
Select idenetity_name=identity(精度) , *  into new_table from old_table;
如:
select id0=identity(18),* into #subnets from t_subnet where sn_type=10;
39、  实现用sql语句进行分页查询方法:
A. 创建一个临时表带identity字段 select id=indentity(20), * into #table_anme from table_name where 条件
B. 然后根据id进行检索第n条到m条数据 (也可用between and)
C. 最后Drop掉该临时表
D. 注意要打开数据库的select into /bulk copy属性 sp_dboption database_name, "select into/bulk copy", "true"才能进行select into操作
E. mssql中格式为select identity(int)  id, * from #table_name from table_name where 条件
40、 linux下访问sql-server用db-library与sybase相同要素。只是远程访问端口为sql-server指定的1433

41、 JDBC访问MS-SQLSERVER 
连接数据库:[需要这三个jar文件msbase.jar msutil.jar mssqlserver.jar]
JDBC DRIVER:com.microsoft.jdbc.sqlserver.SQLServerDriver
URL:jdbc:microsoft:sqlserver://Ip Or Name:1433;DatabaseName=XXX
42、 Oracle中的外连接符为=(+) 或(+)= 在Sybase中为=* 或 *=
43、 执行sybase过程中会有日志满了或存储空间不够了,出现supsend状态,可用
isql  -Usa -Ppassword -Sdbservername
进去执行dump tran db_name with truncate_only进行清空操作
或者dump tran db_name tobp''''patfl''''进行备份在执行清空。
44、 ms-sql中的substring(string, start, length)函数参数,start和length为INT型不能为numeric型。
45、 select * into 在oracle中的用法在ms-sql和sybase中的用法为select @变量=column 
from 表名 where 条件
46、 游标在ms-sql和sybase中差别主要为while 判断的全局变量不同。
Sybase中为@@sqlstatus = 0
Ms-sql中为@@FETCH_STATUS = 0
   关闭游标时在ms-sql中除了[close 游标名] 还要增加[deallocate 游标名]
   
47、 MS-SQL对于sql语句大小写不敏感,sybase对大小写敏感。

48、 oracle同sybase和mssql的常用函数对比
ORACLE SYBASE MS-SQLSERVER
SysdateTo_char(&s'''格'''')格式:yyyymmddhh24miss任意组合 getdate()可用year() month() day()分解获得年月日 convert(varchar, getdate(), 108)是hh:mm:ss getdate()可用year() month() day()分解获得年月日convert(varchar, getdate(), 108)108是hh:mm:ss120是yyyy-mm-dd
Length() Datalength() Datalength()
Ltrim() rtrim() Ltrim() rtrim()  Ltrim() rtrim()
Substr() Substring() Substring(varchar, INT, INT)
Reae(''2''''&s'''''',bp''''A) Reae(''2''''&s'''''',bp''''A)
instr
Lpad() rpad() Repit'''''', 32) Repit'''''', 32)
Upper() lower() Upper() lower() Upper() lower()

49、 日期计算在ms-sql中
dateadd(日期代码,日期值, 日期)
select convert(varchar,getdate(),120) as year,convert(varchar,dateadd(ss, 1200,getdate()),120) as nYear
go
日期部分           简写          &nbbsp;    值
year                yy                1753--9999
quarter             qq                1--4
month               mm                1--12
day of year         dy                1--366
day                 dd                1--31
week                wk                1--53
weekday             dw                1--7(Sunday--Saturday)
hour                hh                0--23
minute              mi                0--59
second              ss                0--59
milisecond          ms                0-999

也可
select convert(varchar, getdate(), 1)''''bp''''+convert(varchar,getdate(),108) as oldtime,convert(varchar,dateadd(ss,1200,getdate())1)''''bp''''+convert(varchar,dateadd(ss,1200,getdate()),108) as date
也可
select convert(varchar,convert(datie''''2012''''),111)
go


50、 PostgreSQL中的lib编程时,select 和update /delete的成功失败条件判断是不同的。
Update/delete:: strcmp(PQcmdStatus(temp_res), "")==0
select :: !temp_res||PQresultStatus(temp_res) != PGRES_TUPLES_OK
51、 日期各格式的引用模式ms-sql和sybase中都通用
yyyy/mm/dd hh24:mi:ss
select convert(varchar, getdate(), 1)''''bp''''+convert(varchar,getdate(),108) as oldtime,convert(varchar,dateadd(ss,1200,getdate())1)''''bp''''+convert(varchar,dateadd(ss,1200,getdate()),108) as date
select name,text from all_source where ye''''FUTO'''' and ae''''F_CHECK_IBCP'''';
select convert(varchar,convert(datie''''2012''''),111)
go
Select count(ipgs_host_ne|''''ot''''||f_ipad_chang_c'''s''''''') From t_ipdev_gs

yyyy/mm/ddhh24miss
Select CO_DESC,to_char(sysdate - /8''''yyyymmddhhms'''') co_date from T_LICENSE
dateadd(ss, -1800, getdate())
select co_desc, convert(varchar, dateadd(ss, -1800, getdate()),111)+convert(varchar,dateadd(ss, -1800, getdate()),108) as co_date from t_license
select convert(varchar, getdate(), 1)''''bp''''+convert(varchar,getdate(),108) as oldtime,convert(varchar, dateadd(ss, -1800, getdate()),111)+convert(varchar,dateadd(ss, -1800, getdate()),108) as co_date

yymmddhh:mi:ss
select convert(varchar,getdate(),112)+convert(varchar,getdate(),8)
go
52、 显示sql执行时间用: isql  -Unextip -Pnextip  -Sleon1 -p
        进入即可,加小写-p参数
53、 MS-SQL中创建数据库
create database NEXTIPDB
on primary
(
name = DEVDB,
filename =bp''''d:\mssql_data\dev.d'''',
size = 30MB,
maxsize = 100MB,
filegrowth = 10MB
),
(
name = DEVDB1,
filename =bp''''d:\mssql_data\devd.d'''',
size = 10MB,
filegrowth = 10MB 
)
Log on
(
name = DEVDBLOG,
filename =bp''''e:\mssql_log\devdbl.d'''',
size = 10MB,
maxsize = 100MB,
filegrowth = 10MB
)
go
54、 细小区别
Sybase::
IF NOT EXISTS (SELECT * FROM master..syslogins, master..sysdatabases
WHERE master..syslogins.suid = master..sysdatabases.suid
AND master..syslogins.name =bp''''xi'''')
EXEC sp_changedbowner nextip, NEXTIPDB
GO

Ms-sqlserver::
IF NOT EXISTS (SELECT * FROM master..syslogins, master..sysdatabases
WHERE master..syslogins.sid = master..sysdatabases.sid
AND master..syslogins.name =bp''''xi'''')
EXEC sp_changedbowner nextip, NEXTIPDB
GO

 lake_fu 回复于:2004-04-22 13:22:16 东西太多,留着慢慢看

 skybirds 回复于:2004-04-23 11:11:09 谢得太经典了!谢谢!

 liugr3988 回复于:2004-04-24 21:15:59 好文章

 ansen 回复于:2004-04-24 22:50:23 好文章

 twtdata 回复于:2004-04-25 17:20:45 好东西,值得学习。

 cshongji 回复于:2004-04-26 10:46:16

上一页  [1] [2] [3] [4] [5]  下一页


[其他]手工升级ACCESS到SQLSERVER方法详解  [Web开发]asp+sqlserver 分页方法(不用存储过程)
[C语言系列]应用 SQLServer 链接服务器访问远程 Access 数据库  [C语言系列]如何在Jbuilder9中使用SQLServer JDBC驱动
[C语言系列]java与sqlserver2000的连接(最终版)!  [C语言系列]一个简单的jsp连接sqlserver数据库的小实例
[Web开发]ADO中sqlserver存储过程使用  [其他]Odbc连SQLServer数据库的几种方法
[其他]使用ADO连接到防火墙后的SQLServer  [ORACLE]系统从oracle版本转化为sqlserver版本
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台