首頁>Club>
29
回覆列表
  • 1 # 藍風24

    你好,目前目前大型的資料庫都採用oracle,中小型的用sqlServer,建議用sqlserver或者mysql。

    sybase與sqlsrver的內在區別就是:

    1.Sybase沒有使用者自定義函式。

    2.判斷fetch成功的全域性變數是@@SQLstatus,而不是@@fetch_status。

    3.沒有set,賦值與查詢通用select。

    4.沒有top,返回N行要使用set rowcount N / set rowcount 0

    5.raiserror 22009 " "--> raiserror( " ",16,1)

    6.遊標一定要在過程中使用,不能單獨在查詢中使用。

    7.銷燬遊標要加cursor關鍵字.如:deallocate cursor cur_tmp

    8.沒有bigint型別。

    9.create table #t(id numeric(12,0) identity not null),不支援int型,且不能設定起始值和步進值。

    10.不能alter一個儲存過程,要先drop掉再create。

    11.沒有len函式,使用char_length或datalength等效。

    12.透過sysindexes中的doampg列可返回某表的行數,rowcnt(doampg) 。

    13.convert函式沒有120格式(yyyy-mm-dd hh:mm:ss),需要使用select convert(char(4),datepart(year,getdate()))+ "- "+right( "0 "+convert(varchar(2),datepart(month,getdate())),2)+ "- "+right( "0 "+convert(varchar(2),datepart(day,getdate())),2)+ " "+convert(char(10),getdate(),8)

    14.charindex不能從被查詢字串中按指定位置查詢某字串。

    15.不能使用rtrim函式將數值型轉為字元型。

    16.沒有cast函式,數值型到字元型轉移使用select convert(varchar(10),123)

    17.沒有replace函式。

    18.沒有left函式,只有right函式。

    19.不支援在欄位上加[]。

    20.select語句中不支援變數累加,例如:select @SQL=@SQL+colname from tablename

    21.在過程及檢視中系統會自動將select * 變為select 列1,列2...

    22.varchar最大支援16384個位元組(SQLServer中是8000) 。

    23.Sybase不支援表變數。

    24.Sybase不支援instead of觸發器。

    25.Sybase沒有排程(注:定時執行某個操作) 。

  • 中秋節和大豐收的關聯?
  • 怎樣進行seo能獲得更好的關鍵詞排名?