El Odbc de SQL Server

10
10/8/2015 El ODBC de SQL Server https://www.uv.es/jac/guia/gestion/gestion5.htm 1/10 [Indice ] ¿Cómo se instala el ODBC de SQL Server? Cuando se instala SQL Server 6.5 en una máquina Windows NT, el controlador ODBC es instalado automáticamente. Si el servidor web es una máquina distinta a la que tiene SQL Server instalado, tendrás que conseguir el controlador ODBC del disco de instalación de SQL Server, o bien, instalar Access 97, aunque es preferible el original de SQL. Creando un origen de datos Abrir el panel de control y localizar el icono llamado 32 bit ODBC. Abrirlo. Paso 1. En el cuadro que aparece, seleccionar la etiqueta System DSN, ya que el IDC sólo trabaja con este tipo de controladores. Pulsar el botón Add

description

CREAR ODBC EN SQL SERVER

Transcript of El Odbc de SQL Server

10/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 1/10[Indice]CmoseinstalaelODBCdeSQLServer?CuandoseinstalaSQLServer6.5enunamquinaWindowsNT,elcontroladorODBCesinstaladoautomticamente.SielservidorwebesunamquinadistintaalaquetieneSQLServerinstalado,tendrsqueconseguirelcontroladorODBCdeldiscodeinstalacindeSQLServer,obien,instalarAccess97,aunqueespreferibleeloriginaldeSQL.CreandounorigendedatosAbrirelpaneldecontrolylocalizareliconollamado32bitODBC.Abrirlo.Paso1.Enelcuadroqueaparece,seleccionarlaetiquetaSystemDSN,yaqueelIDCslotrabajaconestetipodecontroladores.PulsarelbotnAdd10/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 2/10Paso2.SeleccionarelcontroladordeSQLServerenlalista.PulsarelbotnFinalizarPaso3.Aquesdondevamosacrearrealmenteelorigendedatosdelaaplicacin.Analicemoscadacampo:elprimero,Name,nospideelnombredelorigendedatosquevamosacrear,yqueserelutilizadoporlaaplicacin.Sepuedeponercualquiernombre,sinespaciosenblanconismbolos,sloletrasynmeros,comoenelejemplo:pruebas.Estenombrenotieneporquserelmismoqueeldelabasededatosquehayvinculadaal.AlfacilitarestenombrealIDC,elODBCseencargardequelaaplicacin"entienda"loquedicelabasededatos.Elsiguientecampo,Descriptionesunbrevecomentariodelorigendedatos,siteesnecesario,sino,puedesdejarlovacio.ElltimocampodeestapantallaesServer,yserefierealnombredelservidordebasesdedatos.Sinoereseladministradordelservidordebasesdedatos,puedequenosepasquponer.UnservidorWindowsNTconSQLServersecomportaenalgunoscasoscomosisetratasededosmquinasdistintas,aunqueenrealidadesunamisma.Dependiendodeaquservicioqueremosllegarseusaunnombreuotro,aunquepodraserelmismoenamboscasos,peronoseescribendelamismaforma.LasmquinasconsistemaWindowsNTo95/98sesuelenagruparenloquesedenominangruposde10/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 3/10trabajo,quesonlosqueteapareceneneliconoEntornodereddelescritorio.Laformadereferenciarunamquinadetumismogrupoesmediantesunombreenelgrupo.Supongamosqueelnombredenuestroservidoreninterneteselsiguiente:Mi_server.mi_empresa.mi_paisyquetieneasignadaladireccinIP255.255.255.255Normalmente,estamquinaaparecerenelgrupocomoMI_serverysitequieresconectarasuserviciodeimpresora,porejemplo,usarasladireccin:\\Mi_server\impresora.Habitualmente,losadministradoresdeservidoresasignanalosservidoresdebasesdedatoselmismonombrequetienelamquinaenlaqueresiden,aunquepuedeocurrir,porrazonesespeciales,quenoseaas.SQLServer,pordefecto,adoptaelnombredelamquinaenelgrupocuandoseinstala,esdecir,MI_server,perosepodrahaberutilizadootro.Deahpodrasurgirlaimpresindequesetratadedosmquinasdiferentes.Fjatequeencualquiercaso,NOseutilizanlasdosbarrasinclinadasdelantedelnombre.Yunacosams:enlossistemasNT,noolvidarqueelusuariodefinidoparaaccederdesdeinternet,exista,ademasdecomousuariodeNT,comousuariodelaDB,ytengalospermisosnecesariosparallegaryoperarenella.SiSQLServersehainstaladoconlaTrustedsecurity,elusuarioypalabradepasoparaelservidorNTyparaSQLServertienenqueseriguales.Escomoabrirdospuertasconlamismallave.Unavezcumplimentadoslostrescampos,pulsaelbotnSiguientePaso4.EnestepasodefiniremoscmoseharlaverificacindelloginyelpasswordalconectarconSQLServer.Evidentemente,laprimeradelasdosopciones,autenticacinNTusandoelloginentradoenlaconexindered,noeslgicaparaunaaplicacindeinternet,enqueelclienteutlizarunosparmetrosdeconexinasupropiaredoaninguna.Estapodraservirencasodequelaaplicacinseutiliceenunaintranet,yquenotodoslosusuariostuviesenlosmismospermisos.Porlotantomarcaremoslasegundaopcin:AutenticacinSQLServerusandounloginypassworddadosporelusuarioycuandodice"...dadosporelusuario"noserefiereaqueelclientetengaquehacerestocuandoseconecte,sinoaqueelusuarioypasswordlostenemosqueproporcionarahora,enlosdosltimoscamposdelformulario,enestecasoelusuarioeswebycomopalabradepasoenestecasonopondremosninguna(quetambinesunaformadepassword).TantoenaplicacionesprogramadasconelIDCcomoconASP,losusuariosypasswordsutilizados,no"viajan"conlainformacin.Recuerdaquesonprogramasqueseejecutanenelpropioservidor,yseactivanapeticindelIIS,queasuvez,atiendeunallamadahttpquelehaceelclientealservidorwebconunusuarioannimo,ydespusdeprocesarlaconvenientemente,yderesolverinternamentelasconexionesconlaDBqueseannecesarias,alclienteledevolvernhtmlestndarytransparente.Conestoseevitaeltenerquefacilitaralosclientesclavesquepodransercapturadasenlaredindebidamente.EsteusuarioannimoutilizadopordefectoenelIIS,normalmenteslotienepermisosdelecturaenreasmuyconcretasdelservidorNT.Alasaplicacionesinternet,habitualmente,noselesdanuncapermisosparaborrarnada,lomximoquesuelenpoderhacer,esinsertarregistrosenlastablas,yocasionalmente,algunapequeamodificacindedatos,comopuedanserdomicilios,otelfonos.Sielclientedeseaserborradodelabasededatos,normalmentelosolicitaraladministradordelaDB,queprocederdesdesuaplicacinenlaintranet.10/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 4/10Nosedebeconfundirestetipodeautenticacionesconlasquesehacendesdeunapginaweb,quepuedepedirnosunnombredeusuario(login)yunaclave(password).Enestoscasossetratadedirectoriosprotegidosenelpropioservidorweb,yconcretamenteconelIIS,estansencillocomoasignareldirectorioencuestinaunusuarioNTexistente.Yesbuenaidea,puestoqueenestecasolaclavesiviaja,queestosusuariosslotenganpermisosdelectura,ysilainformacinquesevaaaccederesconfidencial,sedeberninstalarsistemasdeencriptacindelosquesoportanlamayoradenavegadoresmodernos,outilizarsistemasmssofisticadosabasedecertificadoselectrnicos.Cuandoseinstalaalgunapginaenunodeestosdirectoriosprotegidos,unproblemamuyhabitualquesuelentenerlosclientesqueutilizanelInternetExplorercomonavegador,consisteenquesistemticamenterecibenunmensajedeerrordelservidor,denegandoelacceso.Estoesdebidoaquepordefecto,elIEsiempreintentaconectarsealosservidoresenmodointranet,yportantoenviaautomticamentealservidorwebelusuarioyclavedeconexinaredlocal,queevidentemente,nosonlosqueesperaelservidorinternet,provocandoelerrordeacceso.Lasolucinconsisteenconfigurar,enelcliente,correctamenteelIEparaqueseconecteenmodointernet,cosaquenotodoelmundosabehacer,obiencerrarlasesinderedlocalyabrirunanuevasinconexin,conloqueelIEnopodrenviarnada,ypodremosintroducirlasclavescorrectascuandoelservidorinternetlasdemande.EstonoocurreconNetscape,quesiempreinicialaconexinenmodointernet(dehechonotieneotra).YcontinuandoconnuestroODBC,elsiguientepasoserpulsarelbotnClientconfiguration.Comosehadichomsarriba,elservidorSQLvaatenerunnombreescritoenformatoderedWindows(Mi_Server),ycomoyadebesdesaber,todaslascomunicacionesentremquinaseninternetfuncionanconelprotocoloTCP/IP,queutilizaotraformadereferenciarlasdirecciones,quepuedenserconelnombreproporcionadoportuDSN,osistemaderesolucindenombres,enlaformaMi_server.mi_empresa.mi_paisomediantesudireccinIP,ennuestroejemplo255.255.255.25510/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 5/10Pararesolveresteproblema,SQLServervieneprovistodeunclienteespecialqueseencargardehacerlasconversionesdenombrenecesariasentreunsistemayotro.Enlaprimeradelastresvistasquetieneestepaso,DBLibrary,seconfigurasiseaplicaralgunaconversindecaracteresono.LaconversindeANSIaOEM,sirveparacambiareljuegopordefectodeSQLServer.Comoyadebesdesaber,SQLServerutilizaeljuegodecaracteresANSIparaalmacenarlosdatos.EstejuegodecaracteresesdistintoalOEMutilizadoporlossistemasWindows,demodoquesiescribimosconnuestraaplicacininternet,porejemplouna""ounaletraacentuadaenlatabla,sinaplicarestaconversin,serguardadaenequivalenteANSI.SisepideeseregistroaSQLServerdesdesuconsoladecontrol,odesdealguncliente,comoIWSql,quesonANSI,nolaveremostalcual,sinouncaracterextrao.Elmismoregistro,solicitadomediantelamismaaplicacinqueloescribisevercorrectamente,ylomismoocurreconlasaplicacioneslocalesdesarrolladasparasistemasWindows,comoAccess97.ComonoeshabitualexplotarlastablasdesdelaconsolaodesdeclientesSQL,espreferibledejaralservidorutilizarsujuegopordefecto.Sihayquecambiarlo,haypensarloahora,yaquecuandoexistanregistrosenlastablas,sisecambia,sertrabajosoaplicarlaconversinatodosellos.Lasiguientevista,NetLibrarycontieneuncampomuyimportante:laDefaultNetwork,esdecireltipoderedpordefecto.Comoyasehadicho,hayquetrabajarenTCP/IP.Lostressiguientescamposselimitanamostrarnosinformacindelalibreriaderedelegida:dndeest,cmovaamostrarlasfechas(queconcideconlodefinidoenlaconfiguracinregionaldelamquina)yeltamaodelamisma.10/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 6/10Lasiguienteyltima,AdvancedcontienetrescamposenlosquehayqueentrarlosparmetrosnecesariosparaconvertirladireccintipoWindowsensuequivalenteIP,comosonServer,NetworkProtocolyConnectionString,quehayquecumplimentarcomopuedesverenlaimagen,conlosvaloresqueyaconocemos.AcontinuacinpulsarelbotnAdd/ModifyparaqueaparezcalacorrespondientelneaenlaventanaCurrentEntriesAqupuedesverlalneadeconexinyacompuesta.SituviesesmsdeunservidorSQL,puedesrepetirelprocesotantasvecescomoseanecesario,parareferenciaratodosellosdelamismamanera.Delamismaforma,sialgunodeelloscambiadenombreodeIP,slohayqueseleccionarlalneacorrespondienteypulsardenuevoalbotnAdd/Modifyparamodificarloqueproceda.PulsarelbotnDoneparaconcluirlaconfiguracindelclienteSQLServerypasaralasiguientepantalladelODBC.10/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 7/10Paso5.Enelpaso4sedefinialusuariowebparautilizarlabasededatosdelaaplicacin.Pero,queocurrirsielusuariowebtienepermisoparautilizarmsdeunabasededatos?TambinsesuponequeyasabesqueenSQLServer,cuandosedadealtaunusuario,esobligatorioasignarleunabasededatospordefecto,ylosadministradoressuelenasignarlaquenormalmentetienemsuso.Sihabitualmenteutilizamoselusuariowebparalastransaccionesinternet,lonormalserquetengapermisosenvariasbasesdedatos,yportantohabrquedefinirencadaODBCcualeslaDBpordefecto.EstosehacemarcandolacasillaChangethedafaultdatabasetoyescogiendoacontinuacindelalistaquehaydebajolaqueproceda.LoqueapareceenesalistassonnombresdebasesdedatosynodeorgenesdedatosdefinidosparaODBC,aunqueenestecasocoincidan.Enlaimagenpuedesvercmomarcarelresto.Fjateque,engeneral,sesueledejaraSQLServerutilizarlosvaloresANSIparacasitodo.ProcuracrearlosODBCsiempreigual,teevitarsproblemasinesperados,ydudasdeltipo"..dndeestarfallando..?".RecuerdaqueSQLServertrabajainternamenteconellenguajeSQLANSIqueincluyeungrannmerodefuncionesdetodotipoydesystemprocedures,oprocedimientosdesistema,autnticosprogramasescritosenSQL,yconlosqueseadministraelservirdor,quetrabajanmalcondatosquenoseancompatiblesANSI.Siemprequehayaquehacerunatraslacinqueseafueradelastablas.10/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 8/10Paso6.ElprimercampodeestepasosirveparadefinirelidiomaqueSQLServerutilizarparaemitirlosmensajesdeerrorcuandoalgonofuncionebien.Dadoquenohayversinenespaoldeesteproducto,hayquedejarlocomoest:(Default),esdecir:ingls.Lossiguientessonalgoparecidoalosquehayenlaprimerapantalladelpaso4:elprimeropermitealODBCelegirelmtododetraslacinelsegundoindicaquenosedebeutilizarningnmtododetraslacineltercerofuerzalaconversindeljuegodecaracteres,peroenlugardeANSIaOEMquesehacaenelpaso4,aquesdeOEMaANSIelcuartoesparautilizarunconversorpropiodelODBC,quehaydedefinir,ynoeldeSQLServer.Hayunagrandiferenciaentreestossistemasdetraslacinylosdelpaso4:Aqulatraslacinserealizadespusdeextraereldatodelatablayantesdepresentarloenpantalla,esdecir,quesontraslacionessloaefectosdevisualizacinynoafectanalosdatos.Enelpaso4latraslacinsehaceantesdeguardareldatoenlatabla,ysafectanalosdatos.Yporfinelltimocontrolsirveparadefinircmosepresentarnlasfechas,nmerosymonedasenpantalla:sienformatoANSIosegnloespecificadoenlaconfiguracinregionaldelamquina10/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 9/10PulsarelbotnSiguientedespusdehabermarcadoloqueproceda.Paso7.Aqusedefinenlosficherosdelogins,quesonunosficherosdetextodondeSQLServeryelODBCvanescribiendotodoloquehacen,tantosiacababiencomosino,yquesonmuytilescuandohayproblemas,yaquepermitenrastreartodolosprocesos.Convienemantenersusnombres,yaquesonutilizadosporalgunasherramientasdeestadisticasyrastreadoresdeerrores.PuedequeseanecesariocambiarlaunidaddediscosinotequedamuchoespacioenlaunidadC(pordefecto),yaquecrecencontinuamente,yperidicamentesedebenvaciarlafrecuenciadependerlgicamentedelaactividaddelservidor.PulsarelbotnFinalizarparapasaralltimopaso.Paso8.Enesteltimopaso,comopuedesver,nohayqueescribirnada.Nosmuestraunresumendetodoslospasosanteriores,ynosofreceelbotnTestDataSourceparaprobarsielorigendedatospuedefuncionarconlosdatosquelehemosproporcionado.EncasoafirmativoshayquepulsarelbotnOKparatermitarelproceso.Sifallalaprueba,habrquevolveratrsyrevisarlosdatoshastaquefuncione.Sielorigendedatosnofuncionadesdeaqunofuncionardesdeningunaparte.Silaaplicacindaproblemas,yestetestfuncionacorrectamente,elfallohayquebuscarloenlaaplicacin.Siunorigendedatosquefuncionabadejadehacerlo,elproblemapuedeestarenlared,oenelSQLServer.RevisarsielusuariotodaviaesvlidoparaesaDB,ysiloes,sisemantienenlospermisosquetena.Sitodoescorrecto,perosiguesinfuncionar,lomejoresborrarloycrearunonuevo.LonicoquesepruebadesdeaquessielODBCpuedellegaralaDBconelusuariodefinidoenmodolectura,nosihaydatosenlaDB,osisepuedeescribirenella.10/8/2015 ElODBCdeSQLServerhttps://www.uv.es/jac/guia/gestion/gestion5.htm 10/10YatenemoslistoelODBC.PulsarelbotnAceptarparacerrareladministradordeorgenesdedatos.Enelcasodequehayaquecambiaralgunacosa,seseleccionaelorigendedatosqueprocedaysepulsaelbotnConfigure.[Indice]