简体   繁体   中英

Which SQL datatype can be used to store mobile numbers in numeric forms, without including characters like brackets and hyphens?

CREATE TABLE Shopper
(
    Shopperid INTEGER PRIMARY KEY,
    ShopperName VARCHAR2(20) NOT NULL,
    Gender VARCHAR2(6) CHECK(Gender IN ('Male', 'Female')),
    MobileNo NUMBER NOT NULL,
    Address VARCHAR2(50)
);

I'm trying to create a table and I want my mobile no. to be devoid of any hyphens and brackets.

Store the value as a string with a check constraint:

CREATE TABLE Shopper (
    Shopperid INTEGER PRIMARY KEY,
    ShopperName VARCHAR2(20) NOT NULL,
    Gender VARCHAR2(6) CHECK (Gender IN ('Male', 'Female')),
    MobileNo VARCHAR2(30) NOT NULL CHECK (REGEXP_LIKE(MobileNo, '^[0-9]*$')),
    Address VARCHAR2(50)
);

This is the code posted in the question by Jazir Ahammed

CREATE TABLE Shopper
(
    Shopperid INTEGER PRIMARY KEY,
    ShopperName VARCHAR2(20) NOT NULL,
    Gender VARCHAR2(6) CHECK(Gender IN ('Male', 'Female')),
    MobileNo NUMBER NOT NULL,
    Address VARCHAR2(50)
);

This is the post by Gordon Linoff

CREATE TABLE Shopper (
    Shopperid INTEGER PRIMARY KEY,
    ShopperName VARCHAR2(20) NOT NULL,
    Gender VARCHAR2(6) CHECK (Gender IN ('Male', 'Female')),
    MobileNo VARCHAR2(30) NOT NULL CHECK (REGEXP_LIKE(MobileNo, '^[0-9]$')),
    Address VARCHAR2(50)
);

This is the answer for INFYTQ's collaboration assignment 2 on DBMS

CREATE TABLE Shopper(
Shopperid INTEGER,
ShopperName VARCHAR2(20) NOT NULL,
Gender CHAR(6),
MobileNo NUMBER NOT NULL,
Address VARCHAR2(50),
CONSTRAINT  s_id_pk PRIMARY KEY(ShopperId),
CONSTRAINT s_gender_ck CHECK(Gender IN ('Male', 'Female'))
)

image of output at InfyTQ

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM