当前位置:首页 » 数据仓库 » 数据库怎么设定1或0
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

数据库怎么设定1或0

发布时间: 2023-07-19 07:30:14

sql中规定某列值只能是0或者1的约束该怎么写

SQL CHECK约束。

CHECK约束用于限制列中的值的范围。

如果对单个列定义CHECK约束,那么该列只允许特定的值。

如果对一个表定义CHECK约束,那么此约束会在特定的列中对值进行限制。

--删除表

drop table temp;

--创建表

CREATE TABLE temp (flag NUMBER(1));

--增加约束

ALTER TABLE tempADDCONSTRAINTck_temp_flag CHECK

(flag=1 or flag=0);

--测试效果版

insert into temp values(1);

insert into temp values(0);

insert into temp values(1);

--测试效果(约束禁止插入数据),提示权:违反检查约束条件

insert into temp values(2);

insert into temp values(3);

SQL CHECK Constraint on CREATE TABLE。

下面的SQL在"Persons"表创建时为"Id_P"列创建CHECK约束。CHECK约束规定"Id_P"列必须只包含大于0的整数。

My SQL:

CREATE TABLE Persons

(

Id_P int NOT NULL,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Address varchar(255),

City varchar(255),

CHECK (Id_P>0)

)

(1)数据库怎么设定1或0扩展阅读:

不同数据库的约束写法:

SQL Server / Oracle / MS Access:

CREATE TABLE Persons

(

Id_P int NOT NULLCHECK (Id_P>0),

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Address varchar(255),

City varchar(255)

)

如果需要命名CHECK约束,以及为多个列定义CHECK约束,请使用下面的SQL语法:

MySQL / SQL Server / Oracle / MS Access:

CREATE TABLE Persons

(

Id_P int NOT NULL,

LastName varchar(255) NOT NULL,

FirstName varchar(255),

Address varchar(255),

City varchar(255),

CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')

)

SQL CHECK Constraint on ALTER TABLE.

如果在表已存在的情况下为"Id_P"列创建CHECK约束,请使用下面的SQL:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons

ADD CHECK (Id_P>0)

如果需要命名CHECK约束,以及为多个列定义CHECK约束,请使用下面的SQL语法:

MySQL / SQL Server / Oracle / MS Access:

ALTER TABLE Persons

ADD CONSTRAINT chk_Person CHECK (Id_P>0 AND City='Sandnes')

撤销CHECK约束。

如需撤销CHECK约束,请使用下面的SQL:

SQL Server / Oracle / MS Access:

ALTER TABLE Persons

DROP CONSTRAINT chk_Person



② 怎么在SQL数据库中填充“0”或者“1”这样的数据

--循环插入:把十进制转换成二进制,然后把二进制换成字符型,SUBSTRING取位插入CREATE FUNCTION dbo.inttobit (@number int)
returns varchar(100)
as
BEGIN
DECLARE @i int
DECLARE @j float
DECLARE @m int
DECLARE @OUT1 varCHAR(1)
DECLARE @OUT2 varchar(20)
SET @i=@number
set @out2=' '
WHILE @i>=1
BEGIN
SET @j=@i/2
SET @m=@i%2
SET @i=floor(@j)
SET @OUT1=cast(@m as char(1))
SET @OUT2=@OUT1+@OUT2
END
RETURN @OUT2
END

③ sqlserver2005怎么设置某字段取值只能为为0和1

可以用函数嵌套,试一下用 select cast(rand(checksum(newid()))*2 as int)
给你看个例子
create table id (id int primary key not null identity,b as cast(rand(checksum(newid()))*2 as int) )
alter table id add name varchar(20)
insert into id(name)values('掌声呢')
insert into id(name)values('掌声呢')
insert into id(name)values('掌声呢')
select * from id

④ 怎么把数据库中的某个表的某个字段默认值设为0

1、打开数据库连接,此时显示已创建的数据库。

⑤ oracle pl/sql 中的字段怎样设置状态,比如0代表男,1代表女

举个例子吧:
很多时候数据库男女字段这样设置。
sex varchar2(3) 然后这个字段存取性别 0 或者1.

当然你在程序调用显示的时候你需要写成

select decode(sex,'1','女','0','男','不明') from table;