+ -
当前位置:首页 → 问答吧 → SQL server Create table 问题

SQL server Create table 问题

时间:2013-11-26

来源:互联网

假设我设计了一个图书馆的Table其中一项是"状态",
入面的数据只有 "已借出" 或 "在馆内"
而我想用0 及 1去代表, 即是在Insert数据时,
输入0,之后Select Table时看到的会是"已借出"
输入1,之后Select Table时看到的会是"在馆内"

请问我要如何Create此Table呢?

谢谢!!

作者: yoho_town_   发布时间: 2013-11-26

create table Book( status number(1) not null default(0));

作者: ceap2003   发布时间: 2013-11-26

请问如何设定
0=on loan
1=available

谢~

作者: yoho_town_   发布时间: 2013-11-26

引用:原帖由 yoho_town_ 於 2013-10-11 11:18 PM 发表
请问如何设定
0=on loan
1=available

谢~
你 insert d record 入去时定
e.g.
create table book (name varchar(100), status int);

insert into book value('Book name', 1);
insert into book value('Book name2', 1);
insert into book value('Book name3', 0);

咁就系之后点睇里面既 1, 0 意思。

e.g. 之后 select 出黎,
select name from book where status = 0; <= le d record 你就可以当成 "已借出"

作者: yuki~~   发布时间: 2013-11-26

谢谢

因为想睇下可否
insert 0 或1时
sql自动见到我insert是0时会帮我转做"已借出"

或是在select时帮我转做"已借出".

谢谢

作者: yoho_town_   发布时间: 2013-11-26

你 define 个 status 个 type 做字就 ok。
不过咁样唔建议,因为用好多位。
你 save 1, 0 同 "已借出" ....

select o个时有得用 case as SELECT CASE WHEN 0 THEN '已借出'WHEN 1 THEN '...'END

[ 本帖最后由 yuki~~ 於 2013-10-12 01:26 PM 编辑 ]

作者: yuki~~   发布时间: 2013-11-26

sorry, 唔明@@
即系要点define?
thx

作者: yoho_town_   发布时间: 2013-11-26

引用:原帖由 yoho_town_ 於 2013-10-12 01:18 PM 发表
sorry, 唔明@@
即系要点define?
thx
点define 你可以自己决定, 你仲意用1代表借出零代表未借 ,又或者用文字'yes'/'no' //////

作者: leonleon622   发布时间: 2013-11-26

引用:原帖由 leonleon622 於 2013-10-13 12:05 PM 发表

点define 你可以自己决定, 你仲意用1代表借出零代表未借 ,又或者用文字'yes'/'no' //////



that's the point

作者: ceap2003   发布时间: 2013-11-26

其实如果只系得0同1两个状态,我就习惯同boolean多过integer

作者: 十二月田猛臣   发布时间: 2013-11-26

引用:原帖由 十二月田猛臣 於 2013-10-14 08:49 PM 发表
其实如果只系得0同1两个状态,我就习惯同boolean多过integer
good point!

作者: ceap2003   发布时间: 2013-11-26

与实际情况不符,应该有一个书的主TABLE, 状态一开始应该是0 (未借出),借出时改为1(借出),所以要用UPDATE将 状态改为一,而不是INSERT。我明白这只是一个例子,做测验的记录。

作者: 81299129   发布时间: 2013-11-26

引用:原帖由 81299129 於 2013-10-21 03:48 PM 发表
与实际情况不符,应该有一个书的主TABLE, 状态一开始应该是0 (未借出),借出时改为1(借出),所以要用UPDATE将 状态改为一,而不是INSERT。我明白这只是一个例子,做测验的记录。
设计有好多方法, 唔一定得一种.

主table有状态栏是一种redundancy, 不一定好.

0(未借出),1(借出)
 or
0(不存在/借出),1(存在/未借出)

我prefer后者, 一来inventory sense比较common.
二来Physical attribute, 有书, 比较直接, 看得见
relation attribute, 与借书人关系, 比较抽象, 看不见

作者: 111x111=12321   发布时间: 2013-11-26

引用:原帖由 111x111=12321 於 2013-10-21 07:20 PM 发表


设计有好多方法, 唔一定得一种.

主table有状态栏是一种redundancy, 不一定好.

0(未借出),1(借出)
 or
0(不存在/借出),1(存在/未借出)

我prefer后者, 一来inventory sense比较common.
...
Sorry don't agree, consider performance, normalization of data. Totally disagree

作者: 81299129   发布时间: 2013-11-26

引用:原帖由 81299129 於 2013-10-22 09:18 AM 发表
Sorry don't agree, consider performance, normalization of data. Totally disagree
我讲左两样野,
第二样野与performance, normalization of data无关, 那么你 TOTALLY disagree 没有说明你的理据.


Keep redundancy 有个 weak point, 你不能否定, 系可靠性降低.

所以仍然只系取舍问题.

作者: 111x111=12321   发布时间: 2013-11-26

热门下载

更多