sybase的数据类型列表

前言

要在sybase上准备一个表, 将全部可能的数据类型都作为表字段.
scjview.exe中添加字段时,可以看到可用的数据类型.
sybase可用的数据类型和sqlserver有点不同。

实验

查看sybase版本

sp_version
go
Script,Version,Status
'ODBC MDA Scripts','15.7.0.403.1011/Fri Jul 06 UTC 00:41:49 2012','Complete'
'OLEDB MDA Scripts','15.7.0.403.1011/Fri Jul 06 UTC 00:16:26 2012','Complete'
'installcommit','15.7.0/EBF 20371 SMP ESD#02 /P/NT (IX86)/Windows 2008 R2/ase157esd2/3109/32-bit/OPT/Sat Jul 07 01:45:36 2012','Complete'
'installjdbc','jConnect (TM) for JDBC(TM)/7.07 ESD #4 (Build 26793)/P/EBF20302/JDK 1.6.0/jdbcmain/OPT/Thu Jul  5 22:08:44 PDT 2012','Complete'
'installjsdb','15.7.0/EBF 20371 SMP ESD#02 /P/NT (IX86)/Windows 2008 R2/ase157esd2/3109/32-bit/OPT/Sat Jul 07 01:45:36 2012','Complete'
'installmaster','15.7.0/EBF 20371 SMP ESD#02 /P/NT (IX86)/Windows 2008 R2/ase157esd2/3109/32-bit/OPT/Sat Jul 07 01:45:36 2012','Complete'
'installmodel','15.7.0/EBF 20371 SMP ESD#02 /P/NT (IX86)/Windows 2008 R2/ase157esd2/3109/32-bit/OPT/Sat Jul 07 01:45:36 2012','Complete'
'montables','15.7.0/20371/P/NT (IX86)/Windows 2008 R2/ase157esd2/3109/32-bit/OPT/Sat Jul 07 07:53:17 2012','Complete'
select @@version
go

'Adaptive Server Enterprise/15.7.0/EBF 20371 SMP ESD#02 /P/NT (IX86)/Windows 2008 R2/ase157esd2/3109/32-bit/OPT/Sat Jul 07 01:14:05 2012'

版本引起的数据类型缺失

在sybase15.7.0中有数据类型 :bigtime, bigdatetime.
在sybase15.0.2_demo版中没有bigtime, bigdatetime 这2种数据类型.

建表

-- create table
use my_db_a;

drop table table_full_data_type;

create table table_full_data_type (
    field_id                        int                              not null  ,

    field_bit                       bit                  DEFAULT  0  not null  ,

    field_tinyint                   tinyint                              null  ,
    field_smallint                  smallint                             null  ,
    field_unsigned_smallint         unsigned smallint                    null  ,
    field_int                       int                                  null  ,
    field_unsigned_int              unsigned int                         null  ,

    field_bigint                    bigint                               null  ,
    field_unsigned_bigint           unsigned bigint                      null  ,

    field_decimal                   decimal(1,0)                         null  ,
    field_numeric                   numeric(1,0)                         null  ,
    field_float                     float(8)                             null  ,
    field_double_precision          float(16)                            null  ,
    field_real                      real                                 null  ,

    field_smallmoney                smallmoney                           null  ,
    field_money                     money                                null  ,

    field_date                      date                                 null  ,

    field_time                      time                                 null  ,
    field_bigtime                   bigtime                              null  ,

    field_smalldatetime             smalldatetime                        null  ,
    field_datetime                  datetime                             null  ,
    field_bigdatetime               bigdatetime                          null  ,

    field_timestamp                 timestamp                            null  ,

    field_char                      char(1)                              null  ,
    field_nchar                     nchar(1)                             null  ,
    field_unichar                   unichar(1)                           null  ,

    field_varchar                   varchar(1024)                        null  ,   
    field_nvarchar                  nvarchar(1)                          null  ,
    field_univarchar                univarchar(1)                        null  ,

    field_text                      text                                 null  ,
    field_unitext                   unitext                              null  ,

    field_sysname                   sysname(30)                          null  ,
    field_longsysname               longsysname                          null  ,

    field_binary                    binary(1)                            null  ,
    field_varbinary                 varbinary(256)                       null  ,

    field_image                     image                                null
);

commit;

插入数据

简单的先插入一行, 用户手工编译或用update语句对单个字段进行试错。
字段的值和属性设置有关系,update单个字段可以试出该设置的正确的值范围。

// insert data
INSERT INTO table_full_data_type 
(field_id,
field_bit) 
VALUES (1000,
1);

// 数据小块编辑完了,就可以用工具生成SQL的模板(insert, update)
// 在 scjview.exe 中 用Interactive SQL(dbisql.exe)生成SQL模板

INSERT INTO dbo.table_full_data_type (field_id,field_bit,field_tinyint,field_smallint,field_unsigned_smallint,field_int,field_unsigned_int,field_bigint,field_unsigned_bigint,field_decimal,field_numeric,field_float,field_double_precision,field_real,field_smallmoney,field_money,field_date,field_time,field_bigtime,field_smalldatetime,field_datetime,field_bigdatetime,field_timestamp,field_char,field_nchar,field_unichar,field_varchar,field_nvarchar,field_univarchar,field_text,field_unitext,field_sysname,field_longsysname,field_binary,field_varbinary,field_image) VALUES(1000,1,2,3,4,5,6,7,8,9,1,2.345,3.456,4.567,5.6780,6.7890,'2018-05-23','09:53:20','09:53:45','2018-05-23 10:01:00.0','2018-05-23 10:01:01.0','2018-05-23 10:01:01.0',0x0000000000002387,'a','b','c','d_111111',e,'f','g_111111','h_111111','i_111111','j_111111',0x33,0x76617262696e6172795f76616c7565,NULL)
UPDATE dbo.table_full_data_type SET field_id=1000,field_bit=1,field_tinyint=2,field_smallint=3,field_unsigned_smallint=4,field_int=5,field_unsigned_int=6,field_bigint=7,field_unsigned_bigint=8,field_decimal=9,field_numeric=1,field_float=2.345,field_double_precision=3.456,field_real=4.567,field_smallmoney=5.6780,field_money=6.7890,field_date='2018-05-23',field_time='09:53:20',field_bigtime='09:53:45',field_smalldatetime='2018-05-23 10:01:00.0',field_datetime='2018-05-23 10:01:01.0',field_bigdatetime='2018-05-23 10:01:01.0',field_timestamp=0x0000000000002387,field_char='a',field_nchar='b',field_unichar='c',field_varchar='d_111111',field_nvarchar=e,field_univarchar='f',field_text='g_111111',field_unitext='h_111111',field_sysname='i_111111',field_longsysname='j_111111',field_binary=0x33,field_varbinary=0x76617262696e6172795f76616c7565,field_image=null WHERE field_id=1000 AND field_bit=1 AND field_tinyint=2 AND field_smallint=3 AND field_unsigned_smallint=4 AND field_int=5 AND field_unsigned_int=6 AND field_bigint=7 AND field_unsigned_bigint=8 AND field_decimal=9 AND field_numeric=1 AND field_float=2.345 AND field_double_precision=3.456 AND field_real=4.567 AND field_smallmoney=5.6780 AND field_money=6.7890 AND field_date='2018-05-23' AND field_time='09:53:20' AND field_bigtime='09:53:45' AND field_smalldatetime='2018-05-23 10:01:00.0' AND field_datetime='2018-05-23 10:01:01.0' AND field_bigdatetime='2018-05-23 10:01:01.0' AND field_timestamp=0x0000000000002387 AND field_char='a' AND field_nchar='b' AND field_unichar='c' AND field_varchar='d_111111' AND field_nvarchar=e AND field_univarchar='f' AND field_text='g_111111' AND field_unitext='h_111111' AND field_sysname='i_111111' AND field_longsysname='j_111111' AND field_binary=0x33 AND field_varbinary=0x76617262696e6172795f76616c7565 AND field_image IS NULL
DELETE FROM dbo.table_full_data_type WHERE field_id=1000 AND field_bit=1 AND field_tinyint=2 AND field_smallint=3 AND field_unsigned_smallint=4 AND field_int=5 AND field_unsigned_int=6 AND field_bigint=7 AND field_unsigned_bigint=8 AND field_decimal=9 AND field_numeric=1 AND field_float=2.345 AND field_double_precision=3.456 AND field_real=4.567 AND field_smallmoney=5.6780 AND field_money=6.7890 AND field_date='2018-05-23' AND field_time='09:53:20' AND field_bigtime='09:53:45' AND field_smalldatetime='2018-05-23 10:01:00.0' AND field_datetime='2018-05-23 10:01:01.0' AND field_bigdatetime='2018-05-23 10:01:01.0' AND field_timestamp=0x0000000000002387 AND field_char='a' AND field_nchar='b' AND field_unichar='c' AND field_varchar='d_111111' AND field_nvarchar=e AND field_univarchar='f' AND field_text='g_111111' AND field_unitext='h_111111' AND field_sysname='i_111111' AND field_longsysname='j_111111' AND field_binary=0x33 AND field_varbinary=0x76617262696e6172795f76616c7565 AND field_image IS NULL

在Interactive SQL中执行多个SQL语句

sql1
go
sql2
go
sql …
go
然后按F5执行输入的所有sql, 如果每个sql后面没有go,f5报错。

插入多条数据,一起执行的例子

自己用SQL做一些数据出来。
image类型的数据用SQL不知道怎么插入,先用NULL吧。
找到的资料 : https://stackoverflow.com/questions/1214462/how-to-insert-jpeg-into-a-sql-server-2000-database-field-of-image-type-using-tra
但是装的sybase没有OPENROWSET存储过程.

-- --------------------------------------------------------------------------------
-- 插入数据
-- --------------------------------------------------------------------------------
INSERT INTO dbo.table_full_data_type 
(
field_id, field_bit, field_tinyint, field_smallint, field_unsigned_smallint, field_int, field_unsigned_int, field_bigint, field_unsigned_bigint, 
field_decimal, field_numeric, field_float, field_double_precision, field_real, field_smallmoney, field_money,
field_date, field_time, field_bigtime, field_smalldatetime, field_datetime, field_bigdatetime, field_timestamp,
field_char, field_nchar, field_unichar, field_varchar, field_nvarchar, field_univarchar, field_text, field_unitext, 
field_sysname, field_longsysname, field_binary, field_varbinary, field_image) 
VALUES(
1000, 1, 2, 3, 4, 5, 6, 7, 8, 
9, 1, 2.345, 3.456, 4.567, 5.6780, 6.7890, 
'2018-05-23', '09:53:20', '09:53:45', '2018-05-23 10:01:00.0', '2018-05-23 10:01:01.0', '2018-05-23 10:01:01.0', 0x0000000000002387,
'a', 'b', 'c', 'd_111111', 'e', 'f', 'g_111111', 'h_111111',
'i_111111', 'j_111111', 0x33, 0x76617262696e6172795f76616c7565, NULL)

go

INSERT INTO dbo.table_full_data_type 
(
field_id, field_bit, field_tinyint, field_smallint, field_unsigned_smallint, field_int, field_unsigned_int, field_bigint, field_unsigned_bigint, 
field_decimal, field_numeric, field_float, field_double_precision, field_real, field_smallmoney, field_money,
field_date, field_time, field_bigtime, field_smalldatetime, field_datetime, field_bigdatetime, field_timestamp,
field_char, field_nchar, field_unichar, field_varchar, field_nvarchar, field_univarchar, field_text, field_unitext, 
field_sysname, field_longsysname, field_binary, field_varbinary, field_image) 
VALUES(
1001, 1, 2, 3, 4, 5, 6, 7, 8, 
9, 1, 2.345, 3.456, 4.567, 5.6780, 6.7890, 
'2018-05-23', '09:53:21', '09:53:45', '2018-05-23 10:01:00.0', '2018-05-23 10:01:01.0', '2018-05-23 10:01:01.0', 0x0000000000002387,
'a', 'b', 'c', 'd_111111', 'e', 'f', 'g_111111', 'h_111111',
'i_111111', 'j_111111', 0x33, 0x76617262696e6172795f76616c7565, NULL)

go

INSERT INTO dbo.table_full_data_type 
(
field_id, field_bit, field_tinyint, field_smallint, field_unsigned_smallint, field_int, field_unsigned_int, field_bigint, field_unsigned_bigint, 
field_decimal, field_numeric, field_float, field_double_precision, field_real, field_smallmoney, field_money,
field_date, field_time, field_bigtime, field_smalldatetime, field_datetime, field_bigdatetime, field_timestamp,
field_char, field_nchar, field_unichar, field_varchar, field_nvarchar, field_univarchar, field_text, field_unitext, 
field_sysname, field_longsysname, field_binary, field_varbinary, field_image) 
VALUES(
1002, 1, 2, 3, 4, 5, 6, 7, 8, 
9, 1, 2.345, 3.456, 4.567, 5.6780, 6.7890, 
'2018-05-23', '09:53:22', '09:53:45', '2018-05-23 10:01:00.0', '2018-05-23 10:01:01.0', '2018-05-23 10:01:01.0', 0x0000000000002387,
'a', 'b', 'c', 'd_111111', 'e', 'f', 'g_111111', 'h_111111',
'i_111111', 'j_111111', 0x33, 0x76617262696e6172795f76616c7565, NULL)

go

INSERT INTO dbo.table_full_data_type 
(
field_id, field_bit, field_tinyint, field_smallint, field_unsigned_smallint, field_int, field_unsigned_int, field_bigint, field_unsigned_bigint, 
field_decimal, field_numeric, field_float, field_double_precision, field_real, field_smallmoney, field_money,
field_date, field_time, field_bigtime, field_smalldatetime, field_datetime, field_bigdatetime, field_timestamp,
field_char, field_nchar, field_unichar, field_varchar, field_nvarchar, field_univarchar, field_text, field_unitext, 
field_sysname, field_longsysname, field_binary, field_varbinary, field_image) 
VALUES(
1003, 1, 2, 3, 4, 5, 6, 7, 8, 
9, 1, 2.345, 3.456, 4.567, 5.6780, 6.7890, 
'2018-05-23', '09:53:23', '09:53:45', '2018-05-23 10:01:00.0', '2018-05-23 10:01:01.0', '2018-05-23 10:01:01.0', 0x0000000000002387,
'a', 'b', 'c', 'd_111111', 'e', 'f', 'g_111111', 'h_111111',
'i_111111', 'j_111111', 0x33, 0x76617262696e6172795f76616c7565, NULL)

go
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值