Está en la página 1de 14

SQL CREATE TABLE Introduccin

CREATE TABLE como el nombre sugiere se utiliza para crear una tabla con columnas y propiedades especificadas, En este tutorial voy a comenzar con ejemplos muy sencillos de crear la tabla y ampliar gradualmente. Voy a crear mis tablas en la base de datos AdventureWorksDW2012 y la tabla aparece en la carpeta Tablas. Durante este tutorial usar slo secuencias de comandos SQL.

CREATE TABLE utilizando SSMS 2012


En el siguiente ejemplo vamos a crear la misma tabla de tiempo mltiple utilizando diferentes opciones.

CMO CREAR TABLA BSICA


En primer lugar voy a crear la tabla Cliente con 3 columnas (atributos). ID, Nombre y Apellidos. La informacin mnima para crear una tabla es el nombre de tabla, nombres de campo y tipos de datos. Vea a continuacin mi ejemplo.

Ejecuto el script

En los mensajes que puedo ver que mi consulta se ejecut con xito.

Yo restaur carpeta Tablas y puedo ver la nueva tabla.

Especifique Null / Not Null para sus columnas


Ahora voy a especificar si la columna debe permite valor NULL o no. En otras palabras NULL significa opcional y NOT NULL significa obligatorio. Es importante entender el valor NULL. NULL significa que el valor no existe, esto es importante porque los campos "en blanco", que tambin se conocen como cadena vaca tienen un valor (cadena vaca) y existe el valor. Por ejemplo, un cliente puede tener una direccin de correo electrnico, pero no la ha provisto para que pueda ser registrado como NULL (valor no incluido), pero algunos clientes no puede tener una direccin de correo electrnico y esto puede ser introducido como blanco (cadena vaca). NOTA: si no se especifica NULL / NOT NULL SQL Server crear columna con NULL Vea a continuacin el ejemplo en el que decimos ID y Nombre es obligatorio.

CMO AGREGAR UNA COLUMNA DE IDENTIDAD


La identidad se utiliza para incrementar el valor de id de fila (nmero entero), se aade cada nueva fila tiempo. Cuando se realiza una operacin de insercin IDENTIDAD incrementa automticamente columna para el siguiente valor disponible. Por ejemplo, si insertamos una nueva fila con la columna de identidad aparece como 1 si aadimos otra fila del ID ser el 2 y as sucesivamente. Una tabla slo puede tener una columna IDENTITY. Columna IDENTITY se utiliza a menudo como clave principal. A continuacin se muestra un ejemplo de CREATE TABLE con IDENTIDAD. Te dars cuenta de dos argumentos (1,1) que describo debajo de la imagen.

IDENTIDAD requiere dos argumentos. En primer lugar es la identidad de semillas que especifica el nmero inicial y el segundo se incrementan en nmero que especifica qu valor se debe agregar al ID anterior. En nuestro caso partimos de 1 y el valor mnimo de la subasta en 1 con cada nueva fila.

CMO AGREGAR COLUMNAS DE CLAVE PRIMARIA


La clave principal es una columna o conjunto de columnas cuyos valores identifican de forma nica cada fila de una tabla. Hay varios mtodo para crear la clave principal y por debajo es una de ellas.

CMO AGREGAR VALOR PREDETERMINADO A UNA COLUMNA


El valor por defecto se utiliza para rellenar nuevo valor del campo de registro cuando no se especifica valor durante Insertar comunicado. Importante : Si se realiza una insercin de una columna con un valor por defecto y se pone explcitamente NULL entonces el valor por defecto no se utiliza debido a que ha especificado

el valor. Recuerde valor predeterminado slo funciona cuando no se especifica el campo durante la insercin. He create table TestDefault con ID como entero y el campo de prueba con el valor predeterminado 1. A continuacin se presentan dos instruccin de insercin primero uno no va a utilizar el valor por defecto y se inserte ejemplo NULL y la segunda va a utilizar el valor predeterminado para el campo de prueba que no se ha especificado en la declaracin de insertar contendr el valor 1 (valor predeterminado).

INSERTAR EN dbo . TestDefault ( Identificacin , prueba ) VALORES ( 1 , null) - esto no va a utilizar el valor por defecto

INSERTAR EN dbo . TestDefault ( Identificacin ) VALORES ( 2 ) - Esto utilizar el valor por defecto

A continuacin se muestra una columna DateTimeInserted donde aad GetDate DEFAULT (). As que cada vez que la nueva fila se inserta sin DateTimeInserted especifica el valor se agrega mediante GetDate () funcin.

Voy al Explorador de objetos, haga clic derecho en la tabla de Clientes y men de la celda, seleccione Editar las primeras 200 filas y escriba dos registros, pero omito DateTimeInserted.

Cuando selecciono datos de la tabla que puedo ver ese campo DateTimeInserted muestra la fecha y la hora actuales.

Los desencadenadores DML se utilizan para hacer cumplir las reglas de negocio cuando se modifican los datos y ampliar la lgica de comprobacin de la integridad de las limitaciones de Microsoft SQL Server, valores predeterminados y reglas. Cul de los siguientes es falsa respecto desencadenadores DML? Un desencadenador DML no puede hacer referencia a los objetos fuera de la base de datos actual Usted puede crear un desencadenador DML slo en la base de datos actual Un desencadenador DML no se puede crear en una tabla temporal o del sistema

La instruccin WRITETEXT no hace que el INSERT o UPDATE disparadores para disparar.

Los desencadenadores DML se utilizan para hacer cumplir las reglas de negocio cuando se modifican los datos y ampliar la lgica de comprobacin de la integridad de las limitaciones de Microsoft SQL Server, valores predeterminados y reglas. Cul de los siguientes es falsa respecto desencadenadores DML? Un desencadenador DML no puede hacer referencia a los objetos fuera de la base de datos actual Usted puede crear un desencadenador DML slo en la base de datos actual Un desencadenador DML no se puede crear en una tabla temporal o del sistema La instruccin WRITETEXT no hace que el INSERT o UPDATE disparadores para disparar.

Lo sentimos, esa era la respuesta equivocada


Usted puede crear un desencadenador DML slo en la base de datos actual, aunque un desencadenador DML puede hacer referencia a los objetos fuera de la base de datos actual

Qu se describe clusula de Transact-SQL abajo? Genera totales que aparecen como columnas de resumen adicionales al final del conjunto de resultados. Cuando se utiliza con BY, la clusula ___ genera interrupciones de control y subtotales en el conjunto de resultados.

AVG COMPUTE Ninguno de estos SUM

Lo sentimos, esa era la respuesta equivocada

Lo que falta en la instruccin T-SQL a continuacin para crear y utilizar un cursor? DECLARE CURSOR PARA MyCursor SELECT * FROM Vendedor TRAER DESPUS de MyCursor;

KEYSET OPEN STATIC SCROLL

Esa fue la respuesta correcta, bien hecho!


Como parte de un nuevo proyecto empresarial, que est diseando una nueva tabla para almacenar las transacciones financieras. En esta tabla se podra llegar a almacenar millones de filas y lo que el espacio de almacenamiento es muy importante. Una de las columnas en la tabla almacenar ya sea un valor de 1 0. Qu tipo de datos sera el ms adecuado? bit tinyint numrico flotador

Esa fue la respuesta correcta, bien hecho!


Your manager has asked you to check the index stats for a particular table called Address. You have executed the following query (see below) and it reported that the avg_fragmentation_in_percent is 15%. What should you do? SELECT * FROM sys.dm_db_index_physical_stats (DB_ID(N'Test'), OBJECT_ID(N'Address'), NULL, NULL , 'DETAILED'); Run ALTER INDEX REBUILD WITH (ONLINE = ON) Run ALTER INDEX REORGANIZE

Rebuild the table Nothing, the index fragmentation is at a safe level Su administrador le ha pedido que revise las estadsticas de ndice para una tabla particular llamado Direccin. Usted ha ejecutado la consulta siguiente (ver abajo) y que inform de que el avg_fragmentation_in_percent es del 15%. Qu debe hacer? SELECT * FROM sys.dm_db_index_physical_stats (DB_ID (N'Test '), OBJECT_ID (N'Address'), NULL, NULL, 'detallada');

Ejecutar ALTER INDEX REBUILD WITH (ONLINE = ON) Ejecutar ALTER INDEX REORGANIZE Reconstruir la tabla Nada, la fragmentacin del ndice se encuentra en un nivel seguro

Lo sentimos, esa era la respuesta equivocada


En general, debe reorganizar ndices si la fragmentacin es entre 5 y 30 por ciento. Usted debe volver a generar el ndice si la fragmentacin es ms del 30 por ciento. Recuerde que estos valores proporcionan una gua aproximada para determinar el punto en el que usted debe alternar entre ALTER INDEX REORGANIZE y ALTER INDEX REBUILD. Sin embargo, los valores reales pueden variar de un caso a otro. Es importante que experimente para determinar el mejor umbral para su entorno.

Your manager has asked you to design a new table and enforce rules for the type of information that can be stored in a particular column. The information must match a particular pattern e.g. a number between 1 and 7. This checking must be performed during insert or update operations. Which parameter should you use when you create the column? CHECK DEFAULT Foreign Key

Primary Key Su administrador le ha pedido que disee una nueva tabla y hacer cumplir las reglas para el tipo de informacin que se puede almacenar en una columna en particular. La informacin debe coincidir con un patrn particular por ejemplo, un nmero entre 1 y 7. Esta comprobacin debe realizarse durante las operaciones de insercin o actualizacin. El parmetro que se debe utilizar al crear la columna? CONSULTAR DEFAULT Clave externa Clave principal

Lo sentimos, esa era la respuesta equivocada


You're creating a new query that will select rows from a products tables. The query works out the count of products within each category by grouping on the category, filtering by categories that contain more than one product and then sorting the results in category order. In which order should these clauses be used in the query? HAVING, GROUP BY, ORDER BY GROUP BY, HAVING, ORDER BY GROUP BY, ORDER BY, HAVING ORDER BY, GROUP BY, HAVING Ests creando una nueva consulta que seleccionar filas de un Mesas de productos. La consulta funciona el recuento de los productos dentro de cada categora mediante la agrupacin de la categora, el filtrado por categoras que contienen ms de un producto y luego ordenar los resultados en orden de categora. En qu orden se deben usar estas clusulas en la consulta? HAVING, GROUP BY, ORDER BY GROUP BY, HAVING, ORDER BY GROUP BY, ORDER BY, HAVING

ORDER BY, GROUP BY, HAVING

Lo sentimos, esa era la respuesta equivocada


You're designing a new SQL Server 2012 query for the HR department. The query will find records from the persons table for people whose name starts with 'Ja'. Which WHERE statement would be the correct choice? where (name like 'Ja%') where (name = 'Ja%') where (name > 'Ja') where (name like '%Ja%') sted est diseando una nueva consulta de SQL Server 2012 para el departamento de recursos humanos. La consulta buscar registros de la tabla personas para las personas cuyo apellido empieza por 'Ja'. Qu WHERE sera la opcin correcta? donde (nombre como 'Ja%') donde (nombre = 'Ja%') donde (nombre> 'Ja') donde (nombre como '% Ja%')

Lo sentimos, esa era la respuesta equivocada


Si ests usando una bsqueda comodn (%), entonces usted debe utilizar la palabra clave del producto y no es igual (=). SQL Server 2012 uses the standard four-part naming convention when referencing database objects. Which of the following is the correct example of the four-part naming? server_name.schema_name.database_name.object_name schema_name.object_name.server_name.database_name object_name.server_name.schema_name.database_name

server_name.database_name.schema_name.object_name QL Server 2012 utiliza la convencin estndar de nomenclatura de cuatro partes al hacer referencia a los objetos de base de datos. Cul de los siguientes es el ejemplo correcto de las cuatro partes de nombres?

server_name.schema_name.database_name.object_name schema_name.object_name.server_name.database_name object_name.server_name.schema_name.database_name server_name.database_name.schema_name.object_name

Lo sentimos, esa era la respuesta equivocada


Usted puede utilizar variaciones de la de cuatro partes de nombres, tales como: . database_name [schema_name] object_name schema_name.object_name object_name.