base de datos sql

Páginas: 6 (1486 palabras) Publicado: 4 de enero de 2014
 MYSQL


create table libros(
codigo int unsigned auto_increment,
titulo varchar(40) not null,
autor varchar(30) not null default 'Desconocido',
codigoeditorial tinyint unsigned not null,
precio decimal(5,2) unsigned,
cantidad smallint unsigned default 0,
primary key (codigo)
);

create table editoriales(
codigo tinyint unsigned auto_increment,
nombrevarchar(20) not null,
primary key(codigo)
);

Update

update deportes
set precio =18000
where codigo = 4;












Agregar campos a una tabla (alter table - add)


Para modificar la estructura de una tabla existente, usamos "alter table".
"alter table" hace una copia temporal de la tabla original, realiza los cambios en la copia, luego borra la tabla original y renombrala copia.
Necesitamos agregar el campo "cantidad", de tipo smallint unsigned not null, tipeamos:

alter table libros
add cantidad smallint unsigned not null;

Usamos "alter table" seguido del nombre de la tabla y "add" seguido del nombre del nuevo campo con su tipo y los modificadores.
Agreguemos otro campo a la tabla:

alter table libros
add edicion date;

Cuando se agrega uncampo, si no especificamos, lo coloca al final, después de todos los campos existentes; podemos indicar su posición (luego de qué campo debe aparecer) con "after":
alter table libros
add cantidad tinyint unsigned after autor;

Modificar campos de una tabla (alter table - modify)

Con "alter table" podemos modificar el tipo de algún campo incluidos sus atributos.
Queremos modificar el tipodel campo "cantidad", como guardaremos valores que no superarán los 50000 usaremos smallint unsigned, tipeamos:

alter table libros
modify cantidad smallint unsigned;

Usamos "alter table" seguido del nombre de la tabla y "modify" seguido del nombre del nuevo campo con su tipo y los modificadores.
Queremos modificar el tipo del campo "titulo" para poder almacenar una longitud de 40caracteres y que no permita valores nulos, tipeamos:

alter table libros
modify titulo varchar(40) not null;


Hay que tener cuidado al alterar los tipos de los campos de una tabla que ya tiene registros cargados. Si tenemos un campo de texto de longitud 50 y lo cambiamos a 30 de longitud, los registros cargados en ese campo que superen los 30 caracteres, se cortarán.


Igualmente, si uncampo fue definido permitiendo valores nulos, se cargaron registros con valores nulos y luego se lo define "not null", todos los registros con valor nulo para ese campo cambiarán al valor por defecto según el tipo (cadena vacía para tipo texto y 0 para numéricos), ya que "null" se convierte en un valor inválido.
Si intentamos definir "auto_increment" un campo que no es clave primaria, aparece unmensaje de error indicando que el campo debe ser clave primaria. Por ejemplo:
alter table libros

modify codigo int unsigned auto_increment;


"alter table" combinado con "modify" permite agregar y quitar campos y atributos de campos. Para modificar el valor por defecto ("default") de un campo podemos usar también "modify" pero debemos colocar el tipo y sus modificadores, entonces resulta muyextenso, podemos setear sólo el valor por defecto con la siguiente sintaxis:

alter table libros
alter autor set default 'Varios';

Para eliminar el valor por defecto podemos emplear:

alter table libros
alter autor drop default;

Cambiar el nombre de un campo de una tabla (alter table - change)


Con "alter table" podemos cambiar el nombre de los campos de una tabla.
Queremoscambiar el nombre del campo "costo" por "precio", tipeamos:

alter table libros
change costo precio decimal (5,2);

Usamos "alter table" seguido del nombre de la tabla y "change" seguido del nombre actual y el nombre nuevo con su tipo y los modificadores.
Con "change" cambiamos el nombre de un campo y también podemos cambiar el tipo y sus modificadores. Por ejemplo, queremos cambiar el...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Base De Datos Sql
  • Ejercicio de bases de datos en sql
  • Base De Datos Sql
  • sql base de datos
  • Bases De Datos Sql
  • Consulta a la base de datos SQL
  • SQL Base de datos
  • Bases De Dato En Sql

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS