你好,目前目前大型的資料庫都採用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沒有排程(注:定時執行某個操作) 。
你好,目前目前大型的資料庫都採用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沒有排程(注:定時執行某個操作) 。