Mostrando entradas con la etiqueta Microsoft SQL. Mostrar todas las entradas
Mostrando entradas con la etiqueta Microsoft SQL. Mostrar todas las entradas

jueves, 11 de julio de 2013

Pasar datos desde una base de datos SQL


El otro dia se nos presentó la necesidad de pasar unas tablas en DBF (Generadas en FOX) a una nueva base de datos en SQL, la tarea es verdaderamente simple lo único que tenemos que hacer es:
Para consultar los datos de la tabla DBF en SQL:


--Donde nuestro archivo se encontraba en C:\Temp\NombreArchivo.dbf
select * from OPENROWSET ('MICROSOFT.JET.OLEDB.4.0','dBase IV;HDR=NO;IMEX=2;
DATABASE=C:\Temp\','select * from Archivo DBF)

Esta consulta nos va a mostrar los datos de la tabla en el inspector de resultados

Luego lo que queremos hacer es cargar los datos de la tabla (DBF) en una tabla SQL de nuestra base de datos, para eso lo único que tenemos que hacer es crear la tabla, con los campos de la tabla en DBF y ejecutar la siguiente consulta

INSERT INTO TablaSQL
select * from OPENROWSET ('MICROSOFT.JET.OLEDB.4.0','dBase IV;HDR=NO;IMEX=2;
DATABASE=C:\Temp\','select campo1, campo2, campo3 from Archivo DBF)

Esta consulta se encargará de copiar los datos de la tabla DBF a nuestra nueva tabla perteneciente a nuestra base de datos.
Nota: Recuerden que deben tener especial cuidado en el tipo de valor en la nueva tabla ya que se les pueden presentar errores.
Espero les sirva.

sábado, 6 de julio de 2013

Crear y completar una tabla Provincias de Argentina #SQL


Como la tabla países también hace falta crear una tabla provincias, al menos para nuestro país (Argentina), acá se las dejamos.



CREATE TABLE [dbo].[TblProvincias] ( 
 [Codigo] [int] IDENTITY(1,1) NOT NULL,
 [Pais] [int], /*1 corresponde a argentina en la tabla TblPaises*/ 
 [Nombre] [nvarchar](120) 
) ON [PRIMARY]

insert into TblProvincias (Pais, Nombre) values (1, 'Buenos Aires')
insert into TblProvincias (Pais, Nombre) values (1, 'Catamarca')
insert into TblProvincias (Pais, Nombre) values (1, 'Chaco')
insert into TblProvincias (Pais, Nombre) values (1, 'Chubut')
insert into TblProvincias (Pais, Nombre) values (1, 'Córdoba')
insert into TblProvincias (Pais, Nombre) values (1, 'Corrientes')
insert into TblProvincias (Pais, Nombre) values (1, 'Entre Ríos')
insert into TblProvincias (Pais, Nombre) values (1, 'Formosa')
insert into TblProvincias (Pais, Nombre) values (1, 'Jujuy')
insert into TblProvincias (Pais, Nombre) values (1, 'La Pampa')
insert into TblProvincias (Pais, Nombre) values (1, 'La Rioja')
insert into TblProvincias (Pais, Nombre) values (1, 'Mendoza')
insert into TblProvincias (Pais, Nombre) values (1, 'Misiones')
insert into TblProvincias (Pais, Nombre) values (1, 'Neuquén')
insert into TblProvincias (Pais, Nombre) values (1, 'Río Negro')
insert into TblProvincias (Pais, Nombre) values (1, 'Salta')
insert into TblProvincias (Pais, Nombre) values (1, 'San Juan')
insert into TblProvincias (Pais, Nombre) values (1, 'San Luis')
insert into TblProvincias (Pais, Nombre) values (1, 'Santa Cruz')
insert into TblProvincias (Pais, Nombre) values (1, 'Santa Fe')
insert into TblProvincias (Pais, Nombre) values (1, 'Santiago del Estero')
insert into TblProvincias (Pais, Nombre) values (1, 'Tierra del Fuego')
insert into TblProvincias (Pais, Nombre) values (1, 'Tucumán')
insert into TblProvincias (Pais, Nombre) values (1, 'No Aplica')

Crear y completar una tabla con Países en #SQL


Siempre es molesto crear una tabla y completarla con datos que no van a cambiar, es por eso que les dejo la creación y carga de una tabla para países.

/*Crear una tabla paises y completarla*/

CREATE TABLE [dbo].[TblPais] (  
[CodigoPais] [int] IDENTITY(1,1) NOT NULL,
[Nombre] [nvarchar](150)
) ON [PRIMARY]

INSERT INTO [TaPais] ([Nombre]) VALUES ('Argentina')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Bolivia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Brasil')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Chile')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Colombia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Ecuador')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Guayana Francesa')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Guyana')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Islas Malvinas')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Paraguay')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Peru')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Surinam')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Uruguay')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Venezuela')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Canada')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Estados Unidos')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Groenlandia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Mexico')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Alemania')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Austria')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Bulgaria')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Dinamarca')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Eslovenia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('España')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Estonia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Finlandia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Francia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Grecia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Holanda')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Hungria')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Irlanda')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Italia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Latvia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Lituania')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Luxemburgo')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Malta')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Polonia')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Portugal')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Reino Unido')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Republica Checa')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Republica Eslovaca')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Rumania')
INSERT INTO [TaPais] ([Nombre]) VALUES ('Suecia')

viernes, 10 de febrero de 2012

Equivalente a TOP 1 de MSql en MySql

El otro día estaba trabajando con MySql y necesita tomar el primer registro, ósea el Top 1 en MSql pero en MySql no sabia como hacerlo pero por suerte la solución es bastante simple, el ejemplo era:

En MSQL

SELECT Top 1* FROM  vListas order BY Codigo

En MySql lo único que tengo que hacer es definir el limite, en mi caso como es solo uno (LIMIT 0 , 1)

SELECT * FROM  `vListas` order BY 'Codigo' LIMIT 0 , 1

Espero les sirva