Conectar con DBGo a SQLServer
Quiero conectar con SQL Server utilizando DBGO = ADO, Tengo experiencia con Firebird, pero con ADO me pierdo un poco. Conoceis documentación que pueda iir mirando
salu2 |
Bueno con ADO es muy sencillo:
(1) Coloca un ADoConnection en tu formulario. (2) Doble click en la propiedad ConnectionString; Te saldrá la ventana de conexión. (3) Use connectionString y pulsar "BUILD" (4) Pestaña Proveedor: Microsoft OLEDB Provider for SQL Server (5) Pestaña Conexión: Rellena la dirección/nombre del servidor y el usuario y contraseña. (6) Selecciona la Base de Datos y pulsa "Probar conexión" Con eso debería funcionar. |
quizas me xpresé mal. Si se como conectar un TADO conection, utilizar un TADQuery o un TADOTable. Los objetos son muy parecidos a los de IBExpress. No es ahi donde me pierdo.
Lo que no consigo entender como hacer actualizable un TADOQuery. En IBX tengo el componente TIBDataSet que tiene las propiedades, SQLSelect, SQLInsert ... Pero en ADO como lo hago. Se que pùedo usar TADOtable, para manejar una tabla, algo muy parecido a BDE+Parados+TTable. Pero eso no creo que sea muy eficiente (o si). En el caso que tenga una ficha, solo muestro un registro, pero si utilizo un TTable realmente voy a manejar una tabla entera, cuando en realidad con un TQuery solo manejaría un registro salu2 |
Siempre puedes utilizar un ADOTable y posicionarte en el registro que necesites o filtrarla para que sólo te muestre el registro deseado.
Otra opción es utilizar un ADOQuery; en ese caso podrás actualizar siempre que la consulta sea actualizable. Si Haces un SELECT sobre una tabla, podrás lyego hacer el Update, pero si generas una consulta con JOIN's, a la hora de hacer el Update obtendrás en consiguiente error. |
ese es el caso que no tengo claro. La tipica consulta que devuelve valores de varias tablas (con un join por ejemplo). Eso es una consulta "no actualizable". Hay forma de hacerla actualizable.
En cuanto a posicionarme en un registro con un TTable y filtrar, no es mas eficiente usar un TQuery al estilo where clave_principal=2. Solo me traigo un registro. Con un Ttable, nada mas conectarnor me traigo bastantes registros (Corregidme si estoy equivocado) |
Cita:
Cita:
|
Cita:
Supongamos que tengo un TDBGrid, enlazado a un TQDOQuery. La consulta es de las no actualizables (tiene un join etc). Si edito un campo del TDBGrid como guardo los cambios. Si añado una fila como añado la fila a la base de datos. Utilizando el BDE, en la misma sotuación, podía untilizar un objeto TUpdateSQL. Dentro de este objeto rellenando adecuadamente las propiedades, se encargaba de hacer las actualizaciones. Utilizando IBX, puedo usar un TIBDataSource, este componente tiene las propieadades SelectSQL, InsertSQL ... etc con las cual puedo hacer editable una consulta que realmente no lo es. Utilizando ADO, ¿no hay nada? para esto salu2 y gracias por vuestras respuestas |
La franja horaria es GMT +2. Ahora son las 03:47:45. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi