Texto II
O diagrama a seguir refere-se ao acompanhamento de vendas de uma loja.

Nesse diagrama:
!$ \bullet !$ CLIENTE: refere-se aos clientes que potencialmente podem comprar produtos; cada cliente é identificado por um código, sendo também descrito por nome, endereço, sexo, data de nascimento, nome do cônjuge (se for o caso), telefone, RG e CPF.
!$ \bullet !$ PRODUTO: cada produto possui um código identificador formado por duas letras e quatro números — ex. XY1232 —; todo produto possui ainda descrição, preço unitário e quantidade em estoque; um produto pode ser similar a nenhum ou a vários outros produtos.
!$ \bullet !$ VENDA: constitui o registro de vendas efetuadas, em que data e hora são úteis para identificar cada ocorrência de venda de um produto para um cliente; é importante saber a quantidade vendida e a forma de pagamento (dinheiro, cartão ou cheque).
Os comandos SQL que deverão ser implementados para a criação das tabelas, para o banco de dados do diagrama mostrado, são esquematizados a seguir, bem como os tipos de dados manipulados pelas tabelas.
!$ \bullet !$ CLIENTE (CodCli, Nome, Ender, Sexo, DataNasc, NomeConj, Fone, RG, CPF)
!$ \bullet !$ PRODUTO (CodProd, Descr, PrecoUnit, QtdeEst)
!$ \bullet !$ VENDA (CodCli, CodProd, DataHora, QtdeVend, FormPag)
!$ \bullet !$ VENDA (CodCli) referencia CLIENTE (CodCli)
!$ \bullet !$ VENDA (CodProd) referencia PRODUTO (CodProd)
|
classe de valores |
tipo de dados |
|
numéricos inteiros |
int [de !2.147.483.648 até 2.147.483.647]; smallint [de !32.768 até 32.767]; tinyint [de 0 até 255] |
|
cadeia de caracteres |
char (n) [espaço de armazenamento constante]; varchar (n) [espaço de armazenamento variável] |
|
valores monetários |
money [de !922.337.203.685.477,5808 até +922.337.203.685.477,5807]; smallmoney [de !214.748,3648 até +214.748,3647] |
|
data e hora |
datetime [precisão de milisegundos]; smalldatetime [precisão de minutos] |
Considerando as informações do texto II, julgue, em cada item a seguir, a correção do código apresentado para a criação da tabela indicada em negrito, para a representação do sistema de vendas descrito e especificado no texto.
Tabela CLIENTE
CREATE TABLE CLIENTE (
CodCli smallint not null,
Nome varchar(40) not null,
Ender varchar(40) not null,
Sexo char(1) not null check (Sexo in (‘M’,‘F’)),
DataNasc smalldatetime not null,
NomeConj varchar(40) null,
Fone int not null,
RG char(10) not null,
CPF char(11) not null
check(CPF like‘[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]
[0-9][0-9]’),
Primary key (CodCli) )