UNIVERSIDAD NACIONAL DE SAN
ANTONIO ABAD DE CUSCO
Facultad de Ingeniería Electrónica, Eléctrica
Mecánica e Informática
Escuela Profesional de Ingeniería Informática y de
Sistemas
TEMA: COMPILADOR PARA EL LENGUAJE SQL SERVER EN
ESPAÑOL
(Primer Informe )
Asignatura : Construcció n de Compiladores
Docente : Ing. José Luis Soncco Á lvarez
Integrante :
Chapi huillca, Erick E. 090212
Huaynapata Quispe, Maricruz 121460
SEMESTRE 2019- II
CUSCO - PERU
Primer Informe Construcción de Compiladores
COMPILADOR PARA EL LENGUAJE SQL SERVER EN ESPAÑOL
1. Léxico del lenguaje de programación SQL Server
1.1. tipos de datos (int, float, etc),
Números: Nú meros enteros y no enteros en distintos tamañ os, y
en diferentes niveles de precisió n; y auto incremento opcional.
Numéricos Exactos. Numéricos Aproximados.
int float
decimal real
numeric
money
smallmoney
Textos: Cadenas de distintas longitudes, y distintas capacidades
de apoyar distintas lenguas.
Cadenas de caracteres Cadenas binarias
char (n) Image : ya no se usa y fue
varchar (n) sustituida por varbinary
text
Fechas: Fechas en distintos niveles de precisió n, desde días
completos hasta fracciones menores de un segundo.
date
datetime
smalldatetime
time
Otros tipos de datos
Timestamp
boolean
pá g. 2
Primer Informe Construcción de Compiladores
1.2. variables válidas
Letras mayú sculas o minú sculas (a…z)(A…Z).
1.3. palabras
Palabras completas (Angulo, Producto, etc.).
Palabras abreviadas (Ang , Produc , etc.).
reservadas (if then else while, etc),
USE MASTER GO CONVERT
IF KEY PUBLIC TABLE
WHERE SELECT INSERT USER
ADD VALUES UPDATE EXIT
CASE DELETE INSERT END
WHERE CRÉ ATE DROP INTO
BACKUP BEGIN FROM ALL
CASE WHEN ELSE GROUP
1.4. operadores (=, ==, +,-,/,*, MOD, DIV). En este punto también se colocan
aquellas funciones que se consideran primitivas (input, print, sqrt, etc).
Operadores comunes Primitivas
+ - sqrt
* / print
% =
>, < <= , >=
<> !=
!< !>
AND OR
NOT LIKE
2. Ejemplo de la construcciones del lenguaje con una sintaxis válida
3. use master
4. go
5. if exists (select * from sysdatabases where name = 'DBCreditoRural')
6. begin
pá g. 3
Primer Informe Construcción de Compiladores
7. drop database DBCreditoRural
8. end
9.
10. create database DBCreditoRural
11. go
12.
13.
14. Describir errores de tipo semántico.
Error Descripción
Int + chart No se puede realizar operaciones
matemá ticas entre un nú mero y una
cadena de texto.
Select convert (varchar(2), 1987) Es erró neo por que un varchar de 2 de
longitud no puede ser convertido a uno
de 4.
15. Colocar ejemplos de al menos 5 programas utilizando el lenguaje de
programación, como el algoritmo de Euclides, mayor de N números,
cálculo del área de un triángulo, etc. Estos ejemplo pueden variar de
acuerdo al contexto del proyecto.
16. Crear un analizador léxico (en FLEX) del lenguaje de programación, este
programa deberá ser probado durante clases, tomando como entrada los
algoritmos descritos en el anterior paso.
pá g. 4